Protection excel
Résolu/Fermé
Christof422
Messages postés
867
Date d'inscription
mardi 24 mai 2011
Statut
Membre
Dernière intervention
8 février 2015
-
Modifié par Christof422 le 20/06/2011 à 11:29
Christof422 Messages postés 867 Date d'inscription mardi 24 mai 2011 Statut Membre Dernière intervention 8 février 2015 - 20 juin 2011 à 16:28
Christof422 Messages postés 867 Date d'inscription mardi 24 mai 2011 Statut Membre Dernière intervention 8 février 2015 - 20 juin 2011 à 16:28
A voir également:
- Protection excel
- Liste déroulante excel - Guide
- Formule excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Mise en forme conditionnelle excel - Guide
9 réponses
antipolis a
Messages postés
15609
Date d'inscription
mercredi 5 novembre 2008
Statut
Membre
Dernière intervention
12 novembre 2014
2 858
Modifié par antipolis a le 20/06/2011 à 12:03
Modifié par antipolis a le 20/06/2011 à 12:03
Bonjour.
Sous VBA, vous avez ces instructions qui servent à protéger ou déprotéger les feuilles.
Sheets("calculs").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("calculs").Select
ActiveSheet.Unprotect
Reste à protéger le classeur.
Bonne journée.
Sous VBA, vous avez ces instructions qui servent à protéger ou déprotéger les feuilles.
Sheets("calculs").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("calculs").Select
ActiveSheet.Unprotect
Reste à protéger le classeur.
Bonne journée.
Christof422
Messages postés
867
Date d'inscription
mardi 24 mai 2011
Statut
Membre
Dernière intervention
8 février 2015
212
20 juin 2011 à 14:10
20 juin 2011 à 14:10
J'ai reussi a le faire en vba mais pas a le transposer en vb net dans mon application.
Je n'arrive pas a savoir pourquoi cela ne marche pas.
Je n'arrive pas a savoir pourquoi cela ne marche pas.
Ctesias
Messages postés
724
Date d'inscription
lundi 16 mai 2011
Statut
Membre
Dernière intervention
1 décembre 2011
36
20 juin 2011 à 14:15
20 juin 2011 à 14:15
ActiveSheet.protect "mdp"
ActiveSheet.Protect userinterfaceonly:=True
Essai ca. La premiere ligne verouille avec un mot de passe, la deuxieme autorise l'activation des macros
ActiveSheet.Protect userinterfaceonly:=True
Essai ca. La premiere ligne verouille avec un mot de passe, la deuxieme autorise l'activation des macros
Christof422
Messages postés
867
Date d'inscription
mardi 24 mai 2011
Statut
Membre
Dernière intervention
8 février 2015
212
20 juin 2011 à 14:38
20 juin 2011 à 14:38
En utilisant la solution de Ctesias, cela me demande de rentrer le mot de passe, pour enlever la protection de la feuille.
En faisant des essai, je me suis rendu compte que la protection se mettai bien en place.
Mais en sauvegardant le fichier, la protection n'est pas enregistrer.
J'ai créer un nouveau projet pour tester voici mon code.
Si j'enlève la procédure d'enregistrement et de fermeture, la protection se fais bien mais si je les remet la protection est ôter.
Merci pour vos réponses
En faisant des essai, je me suis rendu compte que la protection se mettai bien en place.
Mais en sauvegardant le fichier, la protection n'est pas enregistrer.
J'ai créer un nouveau projet pour tester voici mon code.
FileOpen(1,"C:\Documents and Settings\Christophe\Bureau\essai.xls", OpenMode.Output) FileClose(1) 'Déclaration des variables Dim appExcel As Excel.Application 'Application Excel Dim wbExcel As Excel.Workbook 'Classeur Excel Dim wsExcel As Excel.Worksheet 'Feuille Excel 'Ouverture de l'application appExcel = CreateObject("Excel.Application") 'Ouverture d'un fichier Excel wbExcel = appExcel.Workbooks.Open("C:\Documents and Settings\Christophe\Bureau\essai.xls") 'wsExcel correspond à la première feuille du fichier wsExcel = wbExcel.Worksheets(1) wsexcel = appExcel.ActiveWorkbook.ActiveSheet wsexcel.Range("A1").Value="bonjour" 'j'ecris "bonjour" dans la cellule A1 wsexcel.Protect("toto") wbExcel.Save Appexcel.DisplayAlerts = False wbExcel.Close 'Fermeture du classeur Excel appExcel.Quit'Fermeture de l'application Excel 'Désallocation mémoire wsExcel = Nothing wbExcel = Nothing appExcel = Nothing
Si j'enlève la procédure d'enregistrement et de fermeture, la protection se fais bien mais si je les remet la protection est ôter.
Merci pour vos réponses
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ctesias
Messages postés
724
Date d'inscription
lundi 16 mai 2011
Statut
Membre
Dernière intervention
1 décembre 2011
36
20 juin 2011 à 14:54
20 juin 2011 à 14:54
Si si, la protection est enregistré sur ta feuille. Je n'utilise que celle la, et elle marche parfaitement ^^
Christof422
Messages postés
867
Date d'inscription
mardi 24 mai 2011
Statut
Membre
Dernière intervention
8 février 2015
212
20 juin 2011 à 15:04
20 juin 2011 à 15:04
Je peux quand même modifier mon fichier après.
En faite si j'essaye de faire l'enregistrement manuellement cela me dis que:
essai.xls peut contenir des informations non compatible avec Texte
(séparateur: tabulation) (*.txt) Voulez-vous conserver le
format du classeur ?
Cliquer sur Oui pour conserver le format, les
fonctionnalités non compatibles seront perdues"
Cliquer sur non pour conserver ces caractéristiques...
Si je clique sur oui, la protection saute
Si je clique sur non, et que je ré-enregistre après la protection reste.
En faite si j'essaye de faire l'enregistrement manuellement cela me dis que:
essai.xls peut contenir des informations non compatible avec Texte
(séparateur: tabulation) (*.txt) Voulez-vous conserver le
format du classeur ?
Cliquer sur Oui pour conserver le format, les
fonctionnalités non compatibles seront perdues"
Cliquer sur non pour conserver ces caractéristiques...
Si je clique sur oui, la protection saute
Si je clique sur non, et que je ré-enregistre après la protection reste.
Ctesias
Messages postés
724
Date d'inscription
lundi 16 mai 2011
Statut
Membre
Dernière intervention
1 décembre 2011
36
20 juin 2011 à 15:06
20 juin 2011 à 15:06
Normal, puisque lors de l'enregistrement, si tu clique sur Oui, il modifiera ton fichier, et fera sauter la protectin. Fais les meme modification manuellement et reengistre le ;)
Christof422
Messages postés
867
Date d'inscription
mardi 24 mai 2011
Statut
Membre
Dernière intervention
8 février 2015
212
20 juin 2011 à 15:11
20 juin 2011 à 15:11
Oui, mais je ne peux pas^^.
En faite je me sert de excel pour faire une sauvegarde de mon fichier.
J'enregistre des valeur a l'interieur.
Mais je ne veux pas que ces valeur puissent etre modifier donc je voudrai bloquer l'accès.
Donc il faut que tout soit fais automatiquement sans que l'utilisateur ai quelque chose a faire.
En faite je me sert de excel pour faire une sauvegarde de mon fichier.
J'enregistre des valeur a l'interieur.
Mais je ne veux pas que ces valeur puissent etre modifier donc je voudrai bloquer l'accès.
Donc il faut que tout soit fais automatiquement sans que l'utilisateur ai quelque chose a faire.
Christof422
Messages postés
867
Date d'inscription
mardi 24 mai 2011
Statut
Membre
Dernière intervention
8 février 2015
212
20 juin 2011 à 16:28
20 juin 2011 à 16:28
J'ai trouvé mon probleme, je créai mon fichier avec ca:
Et cela ne me créer pas en fichier .xls mais en fichier "text" donc je ne pouvais pas sauvegarder correctement.
Maintenant je créer mon fichier comme ca:
wbExcel = appExcel.Workbooks.Add
appexcel.ActiveWorkbook.SaveAs (FileName:="C:\Documents and Settings\Christophe\Bureau\essai.xls")
donc j'ai un vrai fichier excel, et je peux l'enregistrer normalement, donc la protection s'enregistre aussi.
FileOpen(1,"C:\Documents and Settings\Christophe\Bureau\essai.xls", OpenMode.input) FileClose(1)
Et cela ne me créer pas en fichier .xls mais en fichier "text" donc je ne pouvais pas sauvegarder correctement.
Maintenant je créer mon fichier comme ca:
wbExcel = appExcel.Workbooks.Add
appexcel.ActiveWorkbook.SaveAs (FileName:="C:\Documents and Settings\Christophe\Bureau\essai.xls")
donc j'ai un vrai fichier excel, et je peux l'enregistrer normalement, donc la protection s'enregistre aussi.