Oter la protection d'une feuille avec VBA

frangil

XLDnaute Nouveau
Bonjour le Forum,

J'ai plusieurs feuilles qui sont protégées dans un document Excel et que j'aimerais pouvoir ouvrir certaines feuilles avec une macro qui ouvre une fenêtre en demandant la saisie du mot de passe (exemple de mot de passe: abc123) et qui ouvre une autre fenêtre du style :"Saisie incorrecte" tant que la saisie n'est pas correcte.

Alors, si quelqu'un a une petite idée ...

Belle journée à ceux et celles qui me liront et meilleures messages.

France
 

DL_13

XLDnaute Occasionnel
Re : Oter la protection d'une feuille avec VBA

Bonjour,

Un essai dans le fichier joint si j'ai bien compris

Activation d'une feuille, tant que le mot de passe n'est pas correct retour sur la feuil1 (à modifier éventuellement)

Bonne journée
 

Pièces jointes

  • frangil MdP.xlsm
    18 KB · Affichages: 105

frangil

XLDnaute Nouveau
Re : Oter la protection d'une feuille avec VBA

Bonjour,

J'ai fait un essai qui ne correspond pas tout-à-fait à ce que j'espérais !

En effet, j'aimerais sur des feuilles bien définies, donc pas toutes les feuilles de mon document, que j'ai nommées par exemple, comme CrA, CrB, VdF, ... pouvoir les ouvrir avec un mot de passe, toujours le même et rester sur la feuille en question, tant que le mot de passe :"abc123" correct n'a pas été saisi !

En tous cas, c'est vraiment sympa de m'avoir répondu et à bientôt, j'espère !

Meilleurs messages.

France
 

DL_13

XLDnaute Occasionnel
Re : Oter la protection d'une feuille avec VBA

Re,

il faut modifier dans le Workbook_SheetActivate le nom des feuilles où il doit y avoir le MdP
Nouvel essai avec les feuilles 1, 4, 6 désactivés. Pour avoir accès aux feuilles 2, 3, 5 Mot de passe obligatoire

Bonne journée
 

Pièces jointes

  • frangil MdP V2.xlsm
    19 KB · Affichages: 98

frangil

XLDnaute Nouveau
Re : Oter la protection d'une feuille avec VBA

Oups ! J'ai un message d'erreur ! Erreur de compilation, variable non définie !

Ou se trouve le bug !

Sub PasLesAutresFeuilles()
Do
Mdp = InputBox("Veuillez saisir le mot de passe", "MdP")
Loop While Mdp = ""
If Mdp <> "abc123" Then MsgBox "Mot de passe incorrect !": Feuil1.Activate: Exit Sub
End Sub
 

Discussions similaires

Réponses
8
Affichages
138