Macro Dévérouiller puis Vérouiller

Bonjour,

J'ai un programme excel comportant plusieurs tableaux dont certaines cellules sont verrouillés et d'autre non. J'aimerais ajouter un bouton qui permet d'insérer une ligne dans mon tableau, sans enlever la protection de mon classeur. J'ai essayer une macro qui déprotège la feuille, insère la ligne, puis reprotège la feuille. Tout fonctionne bien excepté que la feuille ne se reprotège pas. ... J'ai essayer avec un nouveau tableau excel vierge et cela fonctionne... Quelqu'un peu m'expliquer la raison de ce problème ?

Voici le code utilisé:

Sub insererligne()

ActiveSheet.Unprotect

ActiveCell.EntireRow.Select

Selection.Copy

Selection.Insert Shift:=xlDown

ActiveSheet.Protect

End Sub

Afin de protèger les cellules désirée, j'utilise la macro suivante:

Sub ProtegerOnglets()

For x = 1 To Worksheets.Count

Sheets(x).Unprotect

For Each n In Worksheets(x).[a1:z999]

If n.Interior.Color = RGB(216, 228, 188) Or n.Interior.Color = RGB(252, 213, 180) Then

n.Locked = False

End If

Next

Sheets(x).Protect

Next

End Sub

Bonjour Jassonjacques,

Modifie le code pour lire

ActiveSheet.Unprotect Password:="xxxxx"

Changes les X par ton mot de passe que tu as mis pour protéger ta feuille

ou plus simple

Sub insererligne()
ActiveSheet.Protect Password:="xxxxx", userinterfaceonly:=True
ActiveCell.EntireRow.Select
Selection.Copy
Selection.Insert Shift:=xlDown
End Sub

L'option userinterfaceonly:=True permet de modifier par VBA les cellules protégées.

Merci ! L'option 2 fonctionne très bien.

Rechercher des sujets similaires à "macro deverouiller puis verouiller"