Mot de passe à chaque macro

Bonjour à tous

J'ai crée un document que je vais devoir partager à plusieurs personnes.

Celui ci comporte plusieurs usf et macros, et pour pouvoir les executer sans encombre j'appelle à chaque fois des modules qui me déverrouillent toutes les feuilles, puis me les re verrouillent à la fin de la macro.

Le code est le suivant

Sub verouiller()

Feuil2.Protect 
Feuil4.Protect 
Feuil1.Protect 
Application.ScreenUpdating = True

End Sub

Problème, un simple appui sur le bouton "Oter la protection" d'excel est possible, sans mot de passe.

Du coup, si je rajoute Password:="xx", on me demande le mot de passe à chaque macro. Ce qui rend évidemment inutilisable le document.

J'aurais voulu savoir si il est possible de ne jamais demander le mot de passe lorsque le "sub deverouiller" est appelé, mais au contraire le demander si l'on veut déproteger la feuille avec le bouton du ruban excel.

J'espère avoir été clair, merci par avance !

Anto

Bonjour. Bienvenue sur le Forum

Si tu mets le MDP dans le code de déprotection, rien ne te sera demandé

Sub verouiller()
Worksheets("Feuil1").Protect Password:="xx"
Worksheets("Feuil2").Protect Password:="xx"
Worksheets("Feuil4").Protect Password:="xx"
End Sub
Sub deverouiller()
Worksheets("Feuil1").Unprotect Password:="xx"
Worksheets("Feuil2").Unprotect Password:="xx"
Worksheets("Feuil4").Unprotect Password:="xx"
End Sub

Cordialement

Bonjour et bienvenu(e)

Bonjour Amadéus

Pour éviter de déverrouiller/verrouiller la page à chaque macro, il suffit de protéger tes pages avec l'option userinterfaceonly (voir l'aide de Protect)

Dans le module Thisworkbook

Private Sub Workbook_Open()
  Verouiller
End Sub

Dans un module standard

Sub Verouiller()
  Feuil2.Protect Password:="AZERTY", userinterfaceonly:=True
  Feuil4.Protect Password:="AZERTY", userinterfaceonly:=True
  Feuil1.Protect Password:="AZERTY", userinterfaceonly:=True
  Application.ScreenUpdating = True
End Sub

Comme cela les macros peuvent modifier les pages protégées, mais pas l'utilisateur

Tu es obligé de les protéger de cette manière à l'ouverture du fichier

Bonsoir,

Merci à vous deux, j'ai pris la deuxième solution pour effectivement plus de clarté dans mon vba!

Bonne soirée à vous !

Anto

Rechercher des sujets similaires à "mot passe chaque macro"