Protection de feuilles avec MDP dans macro
Résolu
Playa2
-
Playa2 -
Playa2 -
Bonjour,
Je voudrais protéger plusieures feuilles d'un fichier excel par un mot de passe ; là pas de problème mais lorsque je lance la macro (qui s'applique sur toutes les feuilles), ce mot de passe m'est demandé à chaque feuille...
Il me faut donc enlever la protection au début de la macro puis la remettre à la fin de celle-ci.
Le problème que je recontre est le suivant, lorsque je tape dans la macro ci-dessous :
ActiveSheet.Protect ("XXX") DrawingObjects:=True
J'ai le message : Erreur de compilation - attendu : fin d'instruction
macro :
Private Sub Workbook_Open()
ActiveSheet.Unprotect
For Each work In Worksheets
work.Activate
With work
If work.Name <> "Accueil" And work.Name <> "MDG" Then
Range("AK1").Select
ActiveSheet.Unprotect
selection.AutoFilter
selection.AutoFilter Field:=6, Criteria1:="1"
selection.AutoFilter Field:=4, Criteria1:="=A", Operator:=xlOr, _
Criteria2:="<>0"
End If
End With
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowSorting:=True, _
AllowFiltering:=True
Range("f5").Select
Next work
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowSorting:=True, _
AllowFiltering:=True
End Sub
Quelqu'un saurait-il quel est le problème et comment y remédier ????
D'avance merci de votre aide.
Je voudrais protéger plusieures feuilles d'un fichier excel par un mot de passe ; là pas de problème mais lorsque je lance la macro (qui s'applique sur toutes les feuilles), ce mot de passe m'est demandé à chaque feuille...
Il me faut donc enlever la protection au début de la macro puis la remettre à la fin de celle-ci.
Le problème que je recontre est le suivant, lorsque je tape dans la macro ci-dessous :
ActiveSheet.Protect ("XXX") DrawingObjects:=True
J'ai le message : Erreur de compilation - attendu : fin d'instruction
macro :
Private Sub Workbook_Open()
ActiveSheet.Unprotect
For Each work In Worksheets
work.Activate
With work
If work.Name <> "Accueil" And work.Name <> "MDG" Then
Range("AK1").Select
ActiveSheet.Unprotect
selection.AutoFilter
selection.AutoFilter Field:=6, Criteria1:="1"
selection.AutoFilter Field:=4, Criteria1:="=A", Operator:=xlOr, _
Criteria2:="<>0"
End If
End With
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowSorting:=True, _
AllowFiltering:=True
Range("f5").Select
Next work
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowSorting:=True, _
AllowFiltering:=True
End Sub
Quelqu'un saurait-il quel est le problème et comment y remédier ????
D'avance merci de votre aide.
A voir également:
- Protection de feuilles avec MDP dans macro
- Reinitialiser pc sans mdp - Guide
- Comment faire un livret avec des feuilles a4 - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Generateur mdp - Télécharger - Sécurité
- K9 web protection - Télécharger - Contrôle parental
6 réponses
Bonjour,
Il faudra penser a proteger le code par MDP, sinon pas difficile de trouver le MDP protection feuilles.
Bonne suite
Il faudra penser a proteger le code par MDP, sinon pas difficile de trouver le MDP protection feuilles.
Private Sub Workbook_Open() Dim work As Worksheet 'attention MDP A Changer !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ActiveSheet.Unprotect Password:="Toto" For Each work In Worksheets ' work.Activate With work If work.Name <> "Accueil" And work.Name <> "MDG" Then Range("AK1").Select .Unprotect Password:="Toto" Selection.AutoFilter Selection.AutoFilter Field:=6, Criteria1:="1" Selection.AutoFilter Field:=4, Criteria1:="=A", Operator:=xlOr, Criteria2:="<>0" End If End With work.Protect Password:="Toto" Range("f5").Select Next work ActiveSheet.Protect Password:="Toto" End Sub
Bonne suite
Ok super, ça fonctionne parfaitement !!!
Cpendant comment fais-tu pour protéger le code par MDP ???
Désolée d'abuser
D'avance merci
Cpendant comment fais-tu pour protéger le code par MDP ???
Désolée d'abuser
D'avance merci
Re,
ouvrir VBA
click droit sur VBAproject en haut a gauche
Propriete cd VBAProject
Onglet protection
Se rappeler du MPD!!! pour plus tard
ouvrir VBA
click droit sur VBAproject en haut a gauche
Propriete cd VBAProject
Onglet protection
Se rappeler du MPD!!! pour plus tard
OK merci ; ça je connaissais mais je pensais qu'on pouvait "cacher" le MDP dans la macro.
En effet, en créant une nouvelle macro "bidon", on a accès à toutes les macros exisitantes malgrés la protection vba ; du coup on peut aller voir le MDP...
N'y a t-il pas la possibilité de masquer ou de modifier le format texte (en même couleur que le fond de page par exemple ) dans la macro ????
En effet, en créant une nouvelle macro "bidon", on a accès à toutes les macros exisitantes malgrés la protection vba ; du coup on peut aller voir le MDP...
N'y a t-il pas la possibilité de masquer ou de modifier le format texte (en même couleur que le fond de page par exemple ) dans la macro ????
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question