XL 2016 Protéger classeur

Lazz

XLDnaute Junior
Bonjour tout le monde ! j'ai un petit problème si vous pouvez m'aider à le résoudre !

J'ai créer une macro pour protéger et déprotéger mon classeur pour éviter que je déprotège tout mes feuilles une par une.
Cependant, j'ai remarquer que verrouiller un classeur entier n'étais pas compatible avec certaines de mes autres macros.

Du coup, Au lieu de verrouiller tout mon classeur avec un mot de passe, j'aimerai ne protéger que certaines feuilles qui m'intéressent.

Je vous mets mon code en dessous et un fichier exemple :
Sub Pro()

Dim i As Integer
Dim Wb As Workbook
Dim sh As Variant

Set Wb = ActiveWorkbook
sh = Wb.Sheets("Parametres").Range("A1:A3").Value

Application.ScreenUpdating = False

Wb.Protect ("123")
For i = 1 To UBound(sh)
If sh(i, 1) = "" Or sh(i, 1) = 0 Then GoTo S
Sheets(CStr(sh(i, 1))).Protect ("123"), AllowFiltering:=True, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
S:
Next i

Application.ScreenUpdating = True

End Sub
J'aimerai protéger que les feuille 1 à 3 mais pas les feuille 4 et 5.
(Il ne faut pas que cela me protège le classeur)

Merci à tous !
 

Pièces jointes

  • Essaie protéger.xlsm
    20.8 KB · Affichages: 4
Dernière édition:

ChTi160

XLDnaute Barbatruc
Bonjour Lazz
D'après ce que j'ai compris
Il te suffit de Supprimer :
VB:
Wb.Protect ("123")
Qui correspond a la Protection du Classeur "Wb"
Dans ta procédure :
Code:
Sub Pro()
Dim i As Integer
Dim Wb As Workbook
Dim sh As Variant

Set Wb = ActiveWorkbook
sh = Wb.Sheets("Parametres").Range("A1:A3").Value

Application.ScreenUpdating = False

'''''''''''''''Wb.Protect ("123")
For i = 1 To UBound(sh) 'Pour chaque lignes du tableau des feuilles'
If sh(i, 1) = "" Or sh(i, 1) = 0 Then GoTo S 'si Vide on se rend à "S"
Sheets(CStr(sh(i, 1))).Protect ("123"), AllowFiltering:=True, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
S:
Next i 'autre'
Application.ScreenUpdating = True
End Sub
Pour quoi mettre "Activesheet" ?
Bonne Journée
Jean marie
 

Discussions similaires

Statistiques des forums

Discussions
312 047
Messages
2 084 864
Membres
102 690
dernier inscrit
souleymaane