Partager via

Bouton de contrôle avec macro

Anonyme
2021-01-16T17:29:27+00:00

J'ai créé un bouton de contrôle pour un UserForm et je lui ai aussi associé une macro.

Je me rend compte que ça ne fait pas ce que je veux, il n'y a aucune association entre les deux.

Maintenant, je veux supprimer ce bouton de contrôle. Pas capable. Dans l'onglet "Développeur", en cliquant "Mode création" de "Contrôles", ça ne met pas le bouton en mode modification. Si je le clique, la macro s'exécute toujours. Et la documentation dans "Aide"????????

Alors, quelqu'un peut me dire comment supprimer un bouton de contrôle contenant une macro (sans supprimer la macro, il va sans dire) ou comment dissocier une macro d'un bouton de contrôle.

Merci de me renseigner.

Michel Brodeur

Microsoft 365 et Office | Excel | Pour la maison | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

14 réponses

  1. DanielCo 107.7K Points de réputation
    2021-01-17T17:01:39+00:00

    La seule chose que fasse Macro6, c'est de décharger le classeur. Donc si le userform se ferme, c'est que Macro6 s'exécute. Pour la fermeture avec CheckBox1 :

    Private Sub CommandButton1_Click()

    'Choix

        If Me.CheckBox1.Value = True Then

            Range("J20") = "Active"

            Unload Me

        Else

            Range("J20") = "Inactive"

          Macro6

        End If

    End Sub

    Sub Macro6()

        Unload Me

    End Sub

    Daniel

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  2. Anonyme
    2021-01-17T15:43:51+00:00

    Daniel,

    Ça marche pour le CheckBox1 mais il n'y a pas de Unload.

    La balance n'a pas marché pcq j'ai oublié un truc.

    Il faut que CheckBox 2 affiche aussi son choix. 

    Alors, je corrige :

    Private Sub CommandButton1_Click()

    'Choix

        If Me.CheckBox1.Value = True Then

            Range("J20") = "Active"

        Else

            Range("J20") = "Inactive"

          Macro6

        End If

    End Sub

    Sub Macro6()

        Unload Me

    End Sub

    Ça marche pas plus. La macro ne démarre pas. Et le Unload fonction pour CheckBox 2 mais pas si c'est CheckBox 1 qui est choisi.

    Qu'en penses-tu?

    Michel

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. DanielCo 107.7K Points de réputation
    2021-01-17T13:34:23+00:00

    Bonjour,

    Essaie :

    Private Sub CommandButton1_Click()

    'Choix

        If Me.CheckBox1.Value = True Then

            Range("J20") = "Active"

        Else

          Macro6

        End If

    End Sub

    Sub Macro6()

        Unload Me

    End Sub

    Daniel

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  4. Anonyme
    2021-01-17T13:14:03+00:00

    Bonjour Daniel,

    J'ai essayé les différents trucs sans succès. Heureusement, je faisais mes essais dans une copie de travail. Je l'ai détruite.

    Ce que je tente de faire c'est d'afficher un UserForm pour faire un choix. Si CheckBox1 est coché, on affiche dans al cellule C20. Sinon, (donc c'est le CheckBox 2 qui est coché) on exécute la macro6.

    Mon UserForm s'affiche mais mon code ne fonctionne pas. Ça prend un End Sub, faut déplacer le EndIf, etc,etc, ça finit plus.

    Peux-tu m'aider.

    Merci 

    Michel

    Private Sub CommandButton1_Click()

        'Choix    

        If ClickBox1 Then

            Range(J20) = "Active"        

        Else

    Sub Macro6()

        Unload Me    

        End If        

    End Sub

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  5. DanielCo 107.7K Points de réputation
    2021-01-16T18:05:34+00:00

    Bonjour,

    Le bouton est bien sur la feuille. Pour plus de sécurité, recopie la macro dans un autre classeur (ou dans le bloc-notes) ou encore, fais une copie de ton classeur. Si la macro s'exécute en mode création, c'est parce qu'il s'agit d'un contrôle ActiveX, mais d'un contrôle de formulaire. Si tu fais un clic droit dessus, tu n'as pas de choix "propriétés", contrairement à un bouton ActiveX.

    Si tu ne peux pas le supprimer, vérifie que la feuille n'est pas protégée. Sinon, c'est peut-être parce que le texte du bouton est en mode modification.

    Essaie de cliquer hors du bouton, puis fais un clic droit dans le bouton et clique sur "Couper".

    Cordialement.

    Daniel

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire