Masquer/Afficher onglet par VBA avec mot de passe [Résolu/Fermé]

Signaler
Messages postés
71
Date d'inscription
lundi 26 décembre 2016
Statut
Membre
Dernière intervention
28 juin 2017
-
Messages postés
71
Date d'inscription
lundi 26 décembre 2016
Statut
Membre
Dernière intervention
28 juin 2017
-
Bonjour à tous,

Merci d'avance de prendre un peu de temps pour m'aider à solutionner mon problème.

En fait j'ai une macro de disponible et ça fonctionne parfaitement jusque la ça va, or j'ai mis un bouton en place, et grâce à ce dernier j'aimerais qu'en appuyant dessus je puisse afficher/masquer mes onglets et cela en écrivant le bon mot de passe j'ai déjà le début de ma macro ci-dessous mais je ne trouve pas comment faire pour que ça fonctionne :

Sub macro()
Password = InputBox("Mot de passe ?", "Verif utilisateur")
If Password = "cybo2016!" Then

If Password <> "cybo2016!" Then
MsgBox "Merci de renseigner le bon mot de passe!!"
End If
End Sub


Merci

3 réponses

Messages postés
112
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
2 juin 2020
1
Bonjour,
- réponse de "GREG" :
Coucou, j'ai trouvé 2 astuces sympa pour demander un password à l'ouverture d'une feuille.

1ere possibilité : je cache ma feuille

à écrire dans le module feuille
'-----------------------------------------------------
Private Sub Worksheet_Activate()
AFFICHER_TDB_ASSO
End Sub

à écrire dans le module classique
'------------------------------------------------------
Sub AFFICHER_TDB_ASSO()
Dim REP As String
REP = InputBox("PASSWORD", "OUVERTURE FEUILLE RECAP ASSO")
If REP = "YOURPASSWORD" Then
Worksheets("TDB_ASSO").Visible = True
Columns("A:XFD").EntireColumn.Hidden = False
ActiveSheet.Cells(1, 1).Select
End If
'------------------------------------------------------
End Sub
Sub MASQUER_TDB_ASSO()
Columns("A:XFD").EntireColumn.Hidden = True
Worksheets("TDB_ASSO").Visible = False
End Sub


2e possibilité : je ne le fais qu'en on active la feuille (mais en mon sens, ça doit devenir très vite difficile si on bosse régulièrement avec plusieurs feuilles dont celle ci ...)

à écrire dans le module feuille
'-----------------------------------------------------
Private Sub Worksheet_Activate()
Dim REP As String
Columns("A:XFD").EntireColumn.Hidden = True
REP = InputBox("PASSWORD", "OUVERTURE FEUILLE RECAP ASSO")
If REP = "YOURPASSWORD" Then
Columns("A:XFD").EntireColumn.Hidden = False
ActiveSheet.Cells(1, 1).Select
End If
End Sub


BIEN SUR CES CODES SONT A ADAPTER A TA FEUILLE ;)

A+ ;)
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

Messages postés
12772
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
16 octobre 2020
2 043
Bonjour

En supposant la 1ere feuille toujours visible et avec le bouton, code à associer au bouton (ici pour afficher/masquer 2 autres feuilles)
Private Sub CommandButton1_Click()
Password = InputBox("Mot de passe ?", "Verif utilisateur")
If Password = "cybo2016!" Then
For n = 2 To 3 'boucle sur les 2eme et 3eme feuille
If Sheets(n).Visible = True Then Sheets(n).Visible = False Else Sheets(n).Visible = True
Next
Exit Sub
End If
MsgBox "Merci de renseigner le bon mot de passe!!"
End Sub


A adapter à tes besoins

Cdlmnt
Via
Messages postés
71
Date d'inscription
lundi 26 décembre 2016
Statut
Membre
Dernière intervention
28 juin 2017

merci à tous les deux pour votre réactivité.

Les deux sont bonnes et adaptables à vos fichiers Excel,

Je recommande donc les deux méthodes même si celle de via55 me parait plus facile (adaptabilité au niveau des onglets, simplicité de compréhension...)

Merci encore à tous les deux