XL 2019 Protéger/déprotéger plusieurs feuille d'un coup

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Lazz

XLDnaute Junior
Bonjour à tous,

Peut être quelqu'un arrivera à résoudre mon problème !! 🙂

J'ai un vingtaine d'onglets et seulement quelques uns doivent être protéger. Cependant, les feuilles ne sont pas à protégé intégralement.
Par exemple : les colonnes A, D et F doivent être protégées. Le reste doit pouvoir être saisie.
J'arrive à protéger mes feuilles une par une dans "révisions". Mais cela m'arrangerait grandement qu'une macro puissent me protéger et déprotéger tout mon classeur d'un seul coup.

Avez-vous des propositions à ma faire ?

Merc 🙂
 
Solution
Re le fil

Arf... Mal lu la question (sélection de feuilles à protéger dans classeur). Le nouveau code :
Code:
Option Explicit
Sub protection()
Dim exclure As Variant
Dim Feuil As Worksheet
Application.ScreenUpdating = False
exclure = "Feuil1,Feuil2,Feuil3,"
For Each Feuil In ThisWorkbook.Worksheets
If InStr(exclure, Feuil.Name & ",") = 0 Then
Feuil.Protect Password:="Lazz"
End If
Next Feuil
End Sub

Sub déprotection()
Dim exclure As Variant
Dim Feuil As Worksheet
Application.ScreenUpdating = False
exclure = "Feuil1,Feuil2,Feuil3,"
For Each Feuil In ThisWorkbook.Worksheets
If InStr(exclure, Feuil.Name & ",") = 0 Then
Feuil.Unprotect Password:="Lazz"
End If
Next Feuil
End Sub

Comme dit post précédent : Avant de protéger, il te faut...
On m'a donné ce code :
Sub Pro()

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

Set Wb = ActiveWorkbook
sh = Wb.Sheets("Data").Range("R2:R18").Value

Application.ScreenUpdating = False

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

Application.ScreenUpdating = True

End Sub

Mais j'avoue ne pas bien comprendre à quoi il correspond 😅
 
Bonjour le forum
Bonjour Lazz

Deux code, l'un pour protéger, l'autre pour déprotéger TOUTES les feuilles :
VB:
Option Explicit
Sub ProtectionToutesLesFeuilles()
Application.ScreenUpdating = False
Dim Feuil As Worksheet
For Each Feuil In Sheets
Feuil.Protect Password:="Lazz"
Next Feuil
End Sub

Sub DeprotectionToutesLesFeuilles()
 Application.ScreenUpdating = False
Dim Feuil As Worksheet
For Each Feuil In Sheets
Feuil.Unprotect Password:="Lazz"
Next Feuil
End Sub

Ensuite, avant de protéger, il te faut "déverrouiller" les colonnes que tu désires préserver (Clic droit - Format de cellules - Protection - Décocher "Verrouillée")

Cela fait toujours plaisir de savoir que la contribution a aidé (ou pas).

N'hésitez pas à marquer le sujet comme résolu le cas échéant ou à liker.


Bonne après-midi à toutes & à tous
@+ Eric c
 
Re le fil

Arf... Mal lu la question (sélection de feuilles à protéger dans classeur). Le nouveau code :
Code:
Option Explicit
Sub protection()
Dim exclure As Variant
Dim Feuil As Worksheet
Application.ScreenUpdating = False
exclure = "Feuil1,Feuil2,Feuil3,"
For Each Feuil In ThisWorkbook.Worksheets
If InStr(exclure, Feuil.Name & ",") = 0 Then
Feuil.Protect Password:="Lazz"
End If
Next Feuil
End Sub

Sub déprotection()
Dim exclure As Variant
Dim Feuil As Worksheet
Application.ScreenUpdating = False
exclure = "Feuil1,Feuil2,Feuil3,"
For Each Feuil In ThisWorkbook.Worksheets
If InStr(exclure, Feuil.Name & ",") = 0 Then
Feuil.Unprotect Password:="Lazz"
End If
Next Feuil
End Sub

Comme dit post précédent : Avant de protéger, il te faut "déverrouiller" les colonnes que tu désires préserver (Clic droit - Format de cellules - Protection - Décocher "Verrouillée")

Cela fait toujours plaisir de savoir que la contribution a aidé (ou pas).

N'hésitez pas à marquer le sujet comme résolu le cas échéant ou à liker.


Bonne après-midi à toutes & à tous
@+ Eric c
 
Merci Eric !
Ca marche au top !

Cependant j'ai quelques exceptions comme toujours !

- J'aimerai pouvoir modifié la police, faire des tries etc sur mes feuilles même si elles sont protégées.
- De plus, J'ai certaines macros qui ne fonctionnent pas lorsque je protège certaines feuilles. N'est-il vraiment pas possible de pouvoir sélectionner les feuilles qui je veux protéger ?

Bien à toi 🙂
 
Re le fil

1/ Quand c'est protégé, c'est protégé (il y aura bien un grand de ce forum qui va venir pour te donner la soluce miracle..)
2-1/ Pour pouvoir activer les macros, il faut ajouter l'argument suivant :
VB:
"Feuil.Protect Password:="Lazz", userinterfaceonly:=True
2-2/ Je pense t'avoir donné le code pour protéger certaines de tes feuilles (IL faut "jouer" avec le nom des feuilles (#4 - Seules les feuilles 1 à 3 sont exclues de la protection).!!!
@+ Eric c
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
531
Retour