Voici une solution complète qui fonctionne comme vous veulent.
De votre explorateur de projet dans VBA, cacher une feuille comme xlSheetVeryHidden (pour la propriété de visibilité).
À partir d'une feuille évidente, choisir une cellule qui sera à la disposition des utilisateurs qui changeront le mot de passe.
De la feuille évidente coder la forme, ajoutent ce code :
-----
Option explicite
Worksheet_Change secondaire privé (cible de ByVal comme gamme)
Si (Target.Column = 2 et Target.Row = 1) puis
Faible newPassword : newPassword = Target.FormulaR1C1
Target.FormulaR1C1 = ""
Application.ActiveWorkbook.Worksheets (2).Cells (1, 1).FormulaR1C1 = newPassword
Finir si
Finir le sous-marin
-----
S'assurer que la colonne (2 dans mon exemple) et la rangée (1 dans mon exemple) adapteront votre cellule de mot de passe.
En outre, changer l'index de votre feuille de travail cachée en l'appropriée (2 dans mon cas - c'est un index basé zéro).
À retreive votre mot de passe caché, emploient ce code :
Application.ActiveWorkbook.Worksheets (2).Cells (1, 1).FormulaR1C1
Ne pas oublier de placer l'index approprié là aussi.
Enfin ne pas oublier de mettre un mot de passe sur votre projet ainsi d'autres personnes ne peuvent pas changer la visibilité de feuille.
========
Je pense que c'est la seule manière dont vous pourriez réaliser exactement ce que vous voulez.
Picoseconde. Naturellement vous pouvez remplacer le mot de passe par le ******** au lieu de dégager le texte comme dans mon exemple.