PB de "dé-protection" "re-protection" sur macro type boucle

Fermé
sterf900 Messages postés 3 Date d'inscription mardi 2 septembre 2014 Statut Membre Dernière intervention 7 septembre 2014 - 7 sept. 2014 à 12:47
via55 Messages postés 14502 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 9 décembre 2024 - 7 sept. 2014 à 14:17
Bonjour messieurs,
Mon problème est le suivant.
j'ai une série de feuille identiques entre elles (seul le nom change ex:janvier;fevrier;etc).dans ces feuilles, il y a un code de type
"Private Sub Worksheet_Calculate()"
ce code ce lance à chaque modification des chacune de ces feuilles. Il fonctionne bien mais... lorsque je protège les feuilles concernées, l'éxécution de ce code enlève la protection de la feuille grace à la première ligne "ActiveSheet.Unprotect "motdepasse"). Le problème est que je n'arrive pas à ré-activer la protection feuille en fin d'instruction. J'ai essayé avec
"ActiveSheet.Protect "motdepasse", True, True, True"
mais sans résultat
En gros, à chaque exécution de la boucle, la feuille active perd sa protection
voici le code:

Private Sub Worksheet_Calculate()
ActiveSheet.Unprotect "motdepasse"
Dim c As Variant
For Each c In Range("$BA$26:$CN$56") ' plage minimum
If Not IsError(c.Value) Then
'Debug.Print c.Row & vbTab & c.Value
If c = 1 Then
Select Case c.Row
Case 26:
msp7Xdessouscible
c.ClearContents
Case 36
msp7Xdessuscible
c.ClearContents
Case 46
msp7Xdescendant
c.ClearContents
Case 56
msp7Xmontant
c.ClearContents
End Select
End If
End If
Next c
Sheets("Feuille13").Protect UserInterfaceOnly:=True
End Sub

merci par avance
A voir également:

1 réponse

via55 Messages postés 14502 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 9 décembre 2024 2 736
7 sept. 2014 à 14:17
Bonjour,

ActiveSheet.Protect "motdepasse" placé juste avant Sheets("Feuille13").Protect UserInterfaceOnly:=True doit fonctionner

Cdlmnt
0