Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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 :
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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…