Protection

Bonjour,

comment protéger une feuille excel en permettant à l'utilisateur de se servir des modes plan ???

J'ai protégé une feuille avec toutes les autorisations possibles et les modes plans sont protégés.

Avez vous une solution?

Merci d'avance

Salut le forum

Pour permettre le fonctionnement des boutons de plan, il existe une instruction, qui peut se combiner avec le paramètre UserInterfaceOnly pour que ça puisse fonctionner même en mode protégé, c'est EnableOutlining.

Code à coller dans le module de code "ThisWorkbook" (parce qu'il faut que ça se lance à chaque fois qu'on ouvre le classeur)

Private Sub Workbook_Open()
With Worksheets("Feuil1")
   .EnableOutlining = True
   .Protect Contents:=True, Password:="Toto", UserInterfaceOnly:=True
End With
End Sub

Mytå

Bonjour,

Sympa la macro, aurait tu la même avec les filtes automatique?

Salut le forum

ExcelNovice voila le code

Private Sub Workbook_Open() 
With Worksheets("Feuil1") 
   .EnableAutoFilter = True
   .Protect Contents:=True, Password:="Toto", UserInterfaceOnly:=True 
End With 
End Sub

Mytå

Mercy Myta

C'est parfait!

EN FAIT non ça va pas du tout car je n'rrive plus à enlever la proteftion sur la feuille, il me demande un mot de passe et "vide" ou "toto" ne marche pas ....

autant pour moi c "Toto" et non "toto" ...

Salut le forum

Si tu ne veux pas utiliser de mot de passe

.Protect Contents:=True, UserInterfaceOnly:=True

Mytå

Bonsoir,

Merci encore Mytha avec les 2 macros je peux filtrer et grouper dissocier. C'est vraiment génial

Bonjour,

Et comment peut-on faire pour permettre ca pour l'ensemble des feuilles d'un classeur, sans avoir forcement à les nommer dans le code ?

Cordialement,

Damien

Bonjour damien,

Essaie ce code :

Private Sub Workbook_Open()

    For i = 1 To Sheets.Count
        With Worksheets(i)
            .EnableOutlining = True
            .Protect Contents:=True, Password:="Toto", UserInterfaceOnly:=True
        End With
    Next i

End Sub

A+

Edit : si tu ne veux pas de mot de passe, mets le code suivant dans ThisWorkbook (à la place du code ci-dessus) :

Private Sub Workbook_Open()

    For i = 1 To Sheets.Count
        With Worksheets(i)
            .EnableOutlining = True
            .Protect Contents:=True, UserInterfaceOnly:=True
        End With
    Next i

End Sub

Merci pour cette aide si rapide. Je testerais ça ce WE.

Cordialement,

Damien

Rechercher des sujets similaires à "protection"