Affecter macro a 2 images

Résolu
Bonjour,

Bonjour,
je voudrais affecter 1 macro a 2 images qui seraient une derrière l'autre
en cliquant sur la 1ere enlève la protection du classeur et se cache laissant la deuxième si on clique ça remet la protection avec mot de passe
je l ai fait avec 2 boutons mais je n arrive pas a l'adapter a 2 images
merci

5 réponses

  1. Modérateur
    Bonjour,

    Je ne comprends pas... Si tu l'as déjà fait (avec 2 boutons), c'est la même chose avec deux images.
    Il suffit que tu affectes les macros aux images : clic droit sur l'image, affecter une macro...

    m@rina
    1. bonjour
      la macro des 2 boutons
      Private Sub CommandButton1_Click()
      mdp = InputBox("Veuillez entrer le mot de passe, svp", "Déprotection")
      If mdp = "" Then Exit Sub
      If mdp <> "atelier" Then
      MsgBox "vous n'avez pas les droits"
      Else
      For Each Sh In Sheets
      Sh.Unprotect mdp
      Next Sh
      Me.CommandButton1.Visible = False
      Me.CommandButton2.Visible = True
      End If
      End Sub

      Private Sub CommandButton2_Click()
      For Each Sh In Sheets
      Sh.Protect "atelier"
      Next Sh
      Me.CommandButton1.Visible = True
      Me.CommandButton2.Visible = False
      End Sub

      le probleme c'est que ça coince au niveau de "Me" comme c'est pas un bouton mais une image je pense qu'il faudrait changer a ce niveau la
      1. Modérateur
        Tu remplace Me.commandButton.visible

        par

        ActiveSheet.Shapes("nom de l'image").Visible = False

        Pour donner un nom de ton choix à l'image et à reprendre dans la macro, tu sélectionnes l'image, tu tapes un nom dans la zone Nom, et tu appuies sur Entrée.

        m@rina
        1. bonsoir
          j y arrive pas je vais laisser mes 2 boutons
          merci de ton aide
          a bientot
      2. Contributeur
        Bonsoir,

        Ce sont des images ou des boutons ?
        Tu parles d'image et utilises Sub CommandButton1_Click
        Sub Image1_Click() ne serait pas mieux ?

        Et enlève me.
        Private Sub Image1_Click()
            Image1.Visible = False
            Image2.Visible = True
        End Sub
        
        Private Sub Image2_Click()
            Image1.Visible = True
            Image2.Visible = False
        End Sub

        fichier exemple

        eric
        1. Modérateur
          Bonjoru eriic,

          Effectivement j'avais pas pensé à cette chose...

          L'autre solution est de donner n'importe quel nom à la macro et de l'affecter à l'image. J'avais oublié de dire ça.
          m@rina
        2. Contributeur
          Salut m@rina

          Aussi oui :-)

          A+
          eric