Macro et classeur protégé

Fermé
Cedpilou - 27 août 2013 à 14:16
Le Pingou Messages postés 12229 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 9 janvier 2025 - 29 août 2013 à 16:05
Bonjour,

Je travaille en ce moment sur un classeur excel avec de nombreuses feuilles masquées et qui s'affichent en fonction de bouton qui permettent d'y accéder.
Tout fonctionne correctement sauf quand je protège le classeur, car il n'y a pas moyen de démasquer une feuille lorsque le classeur est protégé.
Existerait-il un code qui permettrait a chaque exécution d'une macro de déverrouiller puis de verrouiller le classeur ?

Je ne peux malheureusement vous joindre aucun fichier car c'est dans le cadre du travail.

Merci d'avance

Cédric
A voir également:

3 réponses

Le Pingou Messages postés 12229 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 9 janvier 2025 1 454
27 août 2013 à 22:59
Bonjour,
Peut-être une solution par là !

1
Merci, mais je n'ai pas trouvé une réponse à ma question. Pour l'instant j'ai donc crée une procédure que j'ai appelée dans chacune de mes macros, un peu long du coup.
0
g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 575
27 août 2013 à 15:32
Bonjour,

Pour ôter la protection:

Sub SupProtec()
'Supprime la protection de toutes les feuilles
For i = 1 To Worksheets.Count
Worksheets(i).Unprotect Password:=""
Next
End Sub

Pour mettre la protection:

Sub MetProtec()
'Protège toutes les feuilles
For i = 1 To Worksheets.Count
Worksheets(i).Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=""
Next
End Sub

Si tu as un mot de passe tu le mets après Password:="ici"

Tu mets ces codes dans un module standard et les commandes de renvoi dans le code principal.

Cordialement.
0
Merci, pour mettre et enlever la protection du classeur je n'ai aucun problème.

Mais j'ai un grand nombre de macro, donc est-il possible de créer une procédure dans le thisWorkbook qui permettrais de déverrouiller le classeur a chaque début de macro et de le verrouiller à chaque fin de macro ?
Sans devoir mettre un code dans chaque macro.

Cordialement,
0
Le Pingou Messages postés 12229 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 9 janvier 2025 1 454
29 août 2013 à 16:05
Bonjour,
C'est dommage car tout y est, y compris le passage obligatoire par [ThisWorkbook].
Pour vous il suffit d'intégrer le dialogue d'identification directement dans le code [Private Sub Workbook_Open()].

0