Automatisation (dé)protection de cellules
Bonjour,
Je souhaite protéger des cellules et déprotéger en même temps d'autres cellules, de manière automatique, en cliquant sur un bouton.
Le VBA fonctionne correctement pour la protection, mais pas pour la partie déprotection : si je supprime le paragraphe "'fonction pour déprotéger les cellules d'horaires réels", la partie "protection" fonctionne.
Merci de votre avis sur ce qui empêche le bon fonctionnement de la partie "déprotection" :
Sub ProtectionPrevisionnel()
'fonction pour continuer uniquement si d'accord
Dim rep As Integer
rep = MsgBox("En cliquant sur 'oui', vos plannings prévisionnels ne pourront plus être modifiés." & Chr(13) & Chr(10) & "Souhaitez-vous continuer ?", vbYesNo + vbQuestion, "Validation des plannings prévisionnels") 'fonction pour continuer uniquement si d'accord
If rep = vbYes Then 'fonction pour continuer uniquement si d'accord
'fonction pour protéger les cellules d'horaires prévisionnels
Dim x, i&, a&
Application.ScreenUpdating = 0
For Each x In Array("T1", "T2", "T3", "T4")
With Sheets(x)
.Unprotect "f0"
For i = 2 To 12 Step 2
For a = 6 To 162 Step 12
.Range(.Cells(a, i), .Cells(a + 6, i)).Locked = 1
Next a
Next i
Sheets(x).Protect "f0", DrawingObjects:=True, Contents:=True, Scenarios:=True
End With
Next x
'fonction pour déprotéger les cellules d'horaires réels
For Each x In Array("T1", "T2", "T3", "T4")
With Sheets(x)
.Unprotect "f0"
For i = 3 To 13 Step 2
For a = 6 To 162 Step 12
.Range(.Cells(a, i), .Cells(a + 6, i)).Locked = 0
Next a
Next i
Sheets(x).Protect "f0", DrawingObjects:=True, Contents:=True, Scenarios:=True
End With
Next x
' enregistrement du fichier
ActiveWorkbook.Save
'Message
MsgBox "Votre fichier a été enregistré." & Chr(13) & Chr(10) & "Les horaires prévisionnels ne peuvent plus être modifiés."
'fonction pour continuer uniquement si d'accord = sinon
Else
End If
End SubEdit modo : merci de mettre le code entre balises avec le bouton </>
Bonjour,
après tests, pas d'erreurs, pas d'anomalies, les cellules sont protégées ou non selon le code ....
Précisez ce qui ne fonctionne pas, pour vous, pour la partie déprotection
A+
Bonjour,
Merci de votre vérification.
Je vais prendre un exemple :
Lorsque j'ouvre le fichier, les cellules B8 à B12 sont non protégées, et les cellules C8 à C12 sont protégées, donc pas accessibles.
Ce que je souhaite : Lorsque je clique sur mon bouton, les cellules B8 à B12 deviennent "protégées", et les cellules C8 à C12 "non protégées".
Ce qui se passe : les cellules B8 à B12 deviennent "protégées", et les cellules C8 à C12 restent "protégées". Elles ne se déverrouillent pas.
les cellules C6:C12 sont non protégées, on peut modifier le contenu, même si toutes les modifications de la cellules ne sont pas accessibles (format par exemple).
Quelles actions ne pouvez vous pas faire sur ces cellules ?
il y a un "tas" de paramètres qui peuvent être activés ou non au moment de la protection de la feuille.....