Macro + mot de passe feuilles excel

  • Initiateur de la discussion Initiateur de la discussion nabland81
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

nabland81

Guest
J'ai créeé un Macro qui me permet d'ouvrir plusieur feuilles excel avec un mot de passe et de les cacher en appuyant sur une bouton.
Mon probleme se réside sur le fait que je ne peux pas ouvrir toutes les feuilles en mm temps et en tapant le mot de passe une seule fois, alors je suis obligé de le taper plusieurs fois, afin d'ouvrir toutes les feuilles.
Je vouderai savoir est ce qu'il y a un moyen afin de regrouper l'ouverture des feuilles excel sur un seul tape du mot de passe? Merci d'avance.

Voici le code Macro:

Option Explicit



Sub TestPW()
Dim Message$, Titre$, Def$, WS1$, WS2$, WS3$, PassW$
WS1 = "Feuil1"
WS2 = "Feuil2"
WS3 = "Feuil3"
WS3 = "Feuil3"

PassW = "blabla"
Message = "Entrez un mot de passe :"
Titre = "Accès réservé"
Def = "*****"

If Sheets(WS1).Visible = True Then
Sheets(WS1).Visible = False
Else
If InputBox(Message, Titre, Def) = PassW Then _
Sheets(WS1).Visible = Not Sheets(WS1).Visible
Sheets(WS1).Activate
End If



If Sheets(WS2).Visible = True Then
Sheets(WS2).Visible = False
Else
If InputBox(Message, Titre, Def) = PassW Then _
Sheets(WS2).Visible = Not Sheets(WS2).Visible
Sheets(WS2).Activate
End If



If Sheets(WS3).Visible = True Then
Sheets(WS3).Visible = False
Else
If InputBox(Message, Titre, Def) = PassW Then _
Sheets(WS3).Visible = Not Sheets(WS3).Visible
Sheets(WS3).Activate
End If


End Sub
 
Re : Macro + mot de passe feuilles excel

Bonjour,

essaye peut être ainsi :

Code:
Sub test()
Dim Message$, Titre$, Def$, PassW$, WS() As Variant
Dim i As Integer
WS = Array("Feuil1", "Feuil2", "Feuil3")
PassW = "blabla"
Message = "Entrez un mot de passe :"
Titre = "Accès réservé"
Def = "*****"
For i = LBound(WS) To UBound(WS)
    If Sheets(WS(i)).Visible = True Then
        Sheets(WS(i)).Visible = False
    Else
        If InputBox(Message, Titre, Def) = PassW Then _
            Sheets(WS(i)).Visible = Not Sheets(WS(i)).Visible
            Sheets(WS(i)).Activate
        End If
Next i
End Sub

bon après midi
@+
 
Re : Macro + mot de passe feuilles excel

Bonjour chez vous

Code:
Sub Macro1()
Dim Message$, Titre$, Def$, WS1$, WS2$, WS3$, PassW$
Dim f As Worksheet
Titre = "Accès réservé"
Def = "*****"
PassW = "blabla"
Message = "Entrez un mot de passe :"
For Each f In Sheets(Array("Feuil2", "Feuil3"))
If f.Visible = xlSheetVisible Then
f.Visible = xlSheetHidden
Else
If InputBox(Message, Titre, Def) = PassW Then _
f.Visible = Not f.Visible
End If
Next
 
Re : Macro + mot de passe feuilles excel

Mon objectif est de cacher 40 feuilles et laisser ouvert just une, je veux savoir est ce qu'il est possible de créer une macro qui cache les 40 feuilles deriere un mot de passe, et qui laissent juste une ouverte.

Merci d'avance.
 
Re : Macro + mot de passe feuilles excel

Re

regarde le code ci-dessous, suppose que la 1ère feuille reste toujours visible :

Code:
Option Explicit
Sub test()
Dim Message$, Titre$, Def$, PassW$, WS() As Variant
Dim i As Integer
PassW = "blabla"
Message = "Entrez un mot de passe :"
Titre = "Accès réservé"
Def = "*****"
If InputBox(Message, Titre, Def) <> PassW Then Exit Sub
For i = 2 To Sheets.Count
    Sheets(i).Visible = Not Sheets(i).Visible
Next i
End Sub

@+
 
Re : Macro + mot de passe feuilles excel

Voici une autre macro

Il faut une feuille avec le nom test pour tester.
Code:
Dim f   As Worksheet, PASSW$
PASSW = "t"
If Not InputBox("message") = PASSW Then
For Each f In Worksheets
If Not f.Name Like "test" Then
f.Visible = xlSheetHidden
End If
Next
Else
For Each f In Worksheets
f.Visible = True
Next
End If
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
179
Réponses
4
Affichages
757
Réponses
5
Affichages
913
Compte Supprimé 979
C
Retour