Grouper/dissocier sur onglet déjà protégé par macro

nat54

XLDnaute Barbatruc
Bonjour,

Après de vaines recherches malgré l'exsitence de sujets similaires ..

J'ai un classeur excel dont je gère la protection via le code suivant dans un module 1 :
Code:
Option Explicit
'Déclaration des variables de module => utilisables par toutes les procédures du module
Const psw As String = "wxcvbn"   'En déclarant le mdp au niveau module, plus besoin de le modifier x fois dans les procédures
Dim x As Worksheet
Sub ProtegeClasseur()
   For Each x In ThisWorkbook.Worksheets
        x.Protect psw, True, True, True
    Next
End Sub
Sub DeProtegeClasseur()
    For Each x In ThisWorkbook.Worksheets
        x.unprotect psw
    Next
End Sub

Le classeur enregistré est protégé.

Je souhaite que l'utilisateur puisse utiliser les boutons grouper/dissocier pour afficher le détail mois par mois.
Sachant que les onglets ne se nomment jamais de la même manière.

J'avais trouvé ce code mais je n'arrive pas à le faire fonctionner
Code:
Private Sub Workbook_Open()
Dim sh As Worksheet For Each sh In Worksheets 
then sh.EnableAutoFilter = True sh.EnableOutlining = True sh.Protect Contents:=True, Password:="wxcvbn", UserInterfaceOnly:=True 
End With 
End Sub

Merci d'avance,
 

Pierrot93

XLDnaute Barbatruc
Re : Grouper/dissocier sur onglet déjà protégé par macro

Bonjour Nat:)

ceci devrait fonctionner :
Code:
Option Explicit
Private Sub Workbook_Open()
Dim sh As Worksheet
For Each sh In Worksheets
    With sh
        .EnableAutoFilter = True
        .EnableOutlining = True
        .Protect Contents:=True, Password:="wxcvbn", UserInterfaceOnly:=True
    End With
Next sh
End Sub

bonne journée
@+
 

Discussions similaires

Réponses
1
Affichages
122
Réponses
0
Affichages
83

Statistiques des forums

Discussions
311 733
Messages
2 082 019
Membres
101 872
dernier inscrit
Colin T