Feuille Excel avec macro protéger par mot de passe

Bonjour,

J'ai une document avec 4-5 feuille excel avec des macros, qui fonctionne parfaitement, mais lorsque je verrouille la feuille, il me dit la méthode autofit de la classe range a échoué, comment faire ou configurer pour que cela fonctionne sachant que j'ai placer au début de chaque macro (et a la fin) le unprotect + mdp et le protect + mdp ?

D'avance merci

capturer

Bonjour,

C'est la méthode de protection des feuilles qui ne convient pas. Essaie avec ce code.

Il te faudra peut être l'adapter car une partie de ce code masque aussi les onglets.

Dim i As Byte
  Sub DeprotegeFeuilles()

' Déprotège toutes les feuilles du classeur

    'On peut ajouter après unProtect le mot de passe si requis
    'Si on protège les feuilles de cette façon, on peut mmodifier
    'le contenu de la feuille PAR MACRO SEULEMENT sans se soucier
    'que la feuille est protégée.

Application.ScreenUpdating = False
Application.EnableEvents = False ' désactive les macros évenementielles

For i = 1 To Sheets.Count
    Sheets(i).Unprotect Password:="" ', DrawingObjects:=False, Contents:=False, UserInterfaceOnly:=False
    ' Affiche les onglets
    With ActiveWindow
      .DisplayHeadings = True
      .DisplayWorkbookTabs = True
    End With
Next i

Application.EnableEvents = True 'réactive les macros évenementielles
Application.ScreenUpdating = True 'active l'écran

End Sub

  Sub ProtegeFeuilles()
    'On peut ajouter après Protect le mot de passe si requis
    'Si on protège les feuilles de cette façon, on peut mmodifier
    'le contenu de la feuille PAR MACRO SEULEMENT sans se soucier
    'que la feuille est protégée.

Application.ScreenUpdating = False 'désactive l'écran
Application.EnableEvents = False ' désactive les macros évenementielles

For i = 1 To Sheets.Count
    Sheets(i).Protect Password:="", DrawingObjects:=True, Contents:=True, UserInterfaceOnly:=True

    ' Masque les onglets
    With ActiveWindow
      .DisplayHeadings = False
      .DisplayWorkbookTabs = False
    End With
Next i

Application.EnableEvents = True 'réactive les macros évenementielles
Application.ScreenUpdating = True 'active l'écran

End Sub

Cordialement

ddetp88

Merci pour ton code mais j'ai trouver ici :

https://forum.excel-pratique.com/excel/verrouiller-cellule-sans-passer-par-proteger-feuille-t20946.html

comment protéger des cellues grâce à une macro événementielle et cela convient parfaitement si j'enlève la protection de la feuille

Rechercher des sujets similaires à "feuille macro proteger mot passe"