VBA ToggleButton avec mot de passe

Bonjour à toutes et à tous,

J'ai un togglebutton qui lance différente macro (1ère partie : Déverrouillage et Affichage / 2ème partie : Masquage et Verrouillage)

Alors cher Père ou Mère Noël : Je souhaiterai mettre un mot de passe au lancement de la 1ere partie seulement , je m'explique :

Je clique sur le bouton , un mot de passe est demandé, je le saisi, ça lance la 1er partie.

Je reclique sur le bouton, ça lance la 2ème partie sans mot de passe à saisir ni de msgbox.

Je clique sur le bouton , un mot de passe est demandé, je saisi un mauvais mot de passe, ça lance rien du tout et le bouton reste normal (pas enfoncé).

J'ai essayé quelque chose, mais si je me trompe ou j'annule, le bouton reste enfoncé, et si je saisi le bon mdp, il me le demande à chaque partie.

Merci et bonnes fêtes de fin d'année.

Code :

[Private Sub ToggleButton1_Click()

Dim sPass As String

sPass = InputBox("Veuillez saisir le mot de passe")

If sPass = "planning" Then

If ToggleButton1 Then

Call Déprotéger

Call Défiltrer

Else

Call Filtrer

Call Protéger

Sheets("Bdonnées").Select

ActiveWindow.SelectedSheets.Visible = False

End If

Exit Sub

End If

End Sub[/b][/b]

Bonjour,

Comme ça peut être ?

Private Sub ToggleButton1_Click()

    Dim sPass As String

    If ToggleButton1 Then

        sPass = InputBox("Veuillez saisir le mot de passe")

        If sPass <> "planning" Then

            ToggleButton1.Value = False
            Exit Sub

        End If

        Call Déprotéger
        Call Défiltrer

    Else

        Call Filtrer
        Call Protéger

        Sheets("Bdonnées").Select
        ActiveWindow.SelectedSheets.Visible = False

    End If

End Sub

Ah c'est pas mal, c'est même un grand pas de réalisé, on y est presque car lorsque je saisi le bon mot de passe, tout ce passe comme je le souhaite.

Lancement de la 1ere partie avec MDP et avec un reclic pour la seconde sans qu'il me demande de mot de passe. Nickel

Le problème est si je me trompe de mot de passe, il laisse bien le ToggleButton en l'état (Nickel, je ne connaissais pas le code ToggleButton1.Value = False), mais il cherche à me lancer la 2ème partie du code, celle après Else.

Bien sur ça plante car la 1ere n'est pas exécuté.

Je pense que cela vient du End if, j'ai essayé le mettre à la suite de l'autre sans succès ...

Des idées ?

De cette façon peut être ?

Private Sub ToggleButton1_Click()

    Dim sPass As String
    Static Memo As Boolean

    If ToggleButton1 Then

        sPass = InputBox("Veuillez saisir le mot de passe")

        If sPass <> "planning" Then

            Memo = False
            ToggleButton1.Value = False
            Exit Sub

        Else

            Memo = True

        End If

        Call Déprotéger
        Call Défiltrer

    Else

        If Memo = False Then Exit Sub

        Call Filtrer
        Call Protéger

        Sheets("Bdonnées").Select
        ActiveWindow.SelectedSheets.Visible = False

    End If

End Sub

I believe , I can Fly !!!

Top du top, ça marche à la perfection.

Merci Theze et joyeuses fêtes de fin d'année à toi !!

Rechercher des sujets similaires à "vba togglebutton mot passe"