fourstars10pas
XLDnaute Nouveau
Bonjour,
Je vous contacte suite à un petit problème de macro:
J'ai un fichier contenant plusieurs feuilles de calculs, j'ai une feuille qui me sert de page d'accès à 3 feuilles cachées par ce macro et protégées par un mot de passe pour les faire apparaître:
Option Explicit
Sub voirfeuille1()
If InputBox("Mot de passe ?") = "xxxx1" Then Sheets("Sheet1").Visible = True
End Sub
Sub voirfeuille2()
If InputBox("Mot de passe ?") = "xxxx2" Then Sheets("Sheet2").Visible = True
End Sub
Sub voirfeuille3()
If InputBox("Mot de passe ?") = "xxxx3" Then Sheets("Sheet3").Visible = True
End Sub
A la fermeture de mon fichier, je voulais donc que les pages repasse en xlSheetveryhidden, que le fichier soit enregistré ou non avec ce code suivant:
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Sheet1").Visible = xlVeryHidden
Sheets("Sheet2").Visible = xlVeryHidden
Sheets("Sheet3").Visible = xlVeryHidden
End Sub
Lorsque j'active la fonction xlveryhidden sur ces 3 feuilles, que j'enregistre mon VBA, les feuilles disparaissent. Si je les ouvres grâce au mot de passe défini en cliquant sur le bouton de commande correspondant, elles apparaissent, cependant après fermeture du fichier et réouverture les feuilles ne sont plus caché par la fonction xlSheetveryhidden et je doit donc retourner dans le VBA pour remettre l'option.
Si quelqu'un peut me fournir une modification au code ou un nouveau code me permettant de corriger cette erreur, merci d'avance.
Thomas
Je vous contacte suite à un petit problème de macro:
J'ai un fichier contenant plusieurs feuilles de calculs, j'ai une feuille qui me sert de page d'accès à 3 feuilles cachées par ce macro et protégées par un mot de passe pour les faire apparaître:
Option Explicit
Sub voirfeuille1()
If InputBox("Mot de passe ?") = "xxxx1" Then Sheets("Sheet1").Visible = True
End Sub
Sub voirfeuille2()
If InputBox("Mot de passe ?") = "xxxx2" Then Sheets("Sheet2").Visible = True
End Sub
Sub voirfeuille3()
If InputBox("Mot de passe ?") = "xxxx3" Then Sheets("Sheet3").Visible = True
End Sub
A la fermeture de mon fichier, je voulais donc que les pages repasse en xlSheetveryhidden, que le fichier soit enregistré ou non avec ce code suivant:
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Sheet1").Visible = xlVeryHidden
Sheets("Sheet2").Visible = xlVeryHidden
Sheets("Sheet3").Visible = xlVeryHidden
End Sub
Lorsque j'active la fonction xlveryhidden sur ces 3 feuilles, que j'enregistre mon VBA, les feuilles disparaissent. Si je les ouvres grâce au mot de passe défini en cliquant sur le bouton de commande correspondant, elles apparaissent, cependant après fermeture du fichier et réouverture les feuilles ne sont plus caché par la fonction xlSheetveryhidden et je doit donc retourner dans le VBA pour remettre l'option.
Si quelqu'un peut me fournir une modification au code ou un nouveau code me permettant de corriger cette erreur, merci d'avance.
Thomas