Partager via

Cases à cocher

Anonyme
2021-01-05T13:40:04+00:00

Bonjour,

J'ai créé un Userform. J'ai double-cliqué mon bouton "Valider" et j'ai obtenu un tableau dans lequel j'ai mis du code. Le code n'est pas mon problème pour l'instant, je n'ai pas pu l'essayer encore.

Private Sub CommandButton1_Click()

    'Am

    If CheckBox1.Value = True Then 'Si coché

        Range("d21") = "Am"

    Else 'Si décoché

        Range("d21") = ""

    End If

    'Pm

    If CheckBox2.Value = True Then 'Si coché

        Range("d21") = "Pm"

    Else 'Si décoché

        Range("d21") = ""

    End If

End Sub

 Dans ma feuille Excel, j'ai créé un bouton de "Case à cocher". J'ai double-cliqué le bouton et j'ai obtenu un départ de code  sur la feuille.

Private Sub ToggleButton1_Click()

End Sub

Là, je sais plus quoi faire. Me semble qu'il faudrait que j'identifie mon bouton de "Case à cocher" de ma feuille à mon UserForm mais mes tentatives sont vaines.

Quelqu'un peut me dire la suite à faire.

Merci à l'avance.

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

9 réponses

  1. Anonyme
    2021-01-06T13:42:06+00:00

    Bonjour Daniel,

    Exactement,

    Private Sub CommandButton1_Click()

        UserForm1.Show    

    End Sub

    Fonctionne très bien.

    Maintenant, revenons au code. Il me manque quelque chose pcq les 2 premiers ne fonctionnent pas. Seul le troisième, celui en bout de ligne, fonctionne. La difficulté c'est que j'adresse la réponse dans la même cellule pour les 3 cases à cocher. Mais là, le deuxième "If" efface le résultat que le 1er "If" a mis dans la case. Je ne veux pas mettre le résultat dans 3 cellules différentes car ça alourdit mon document. 

    Je suis certain que tu as un code à mettre entre les différentes conditions à me proposer.

    Merci d'avance.

    Private Sub CommandButton1_Click()

        'Am

        If CheckBox1 Then 'Si coché

            Range("d21") = "Am"

        Else 'Si décoché

            Range("d21") = ""

        End If

        'Pm

        If CheckBox1 Then 'Si coché

            Range("d21") = "Pm"

        Else 'Si décoché

            Range("d21") = ""

        End If

        'Soir

        If CheckBox3 Then 'Si coché

            Range("d21") = "Soir"

        Else 'Si décoché

            Range("d21") = ""

        End If

        'Fermeture

        Unload Me

    End Sub

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

    0 commentaires Aucun commentaire
  2. DanielCo 107.7K Points de réputation
    2021-01-05T20:04:45+00:00

    Tu peux utiliser les deux types de bouton. Si tu utilises celui des contrôles de formulaire, tu dois écrire une macro, par exemple :

    Sub AfficherUserform()

      UserForm1.Show

    End Sub

    Ensuite, fais un clic droit sur le bouton et clique sur "Affecter une macro". Choisis ensuite la macro que tu as écrite.

    Si tu utilises le bouton des contrôles ActiveX, fais un double clic sur le bouton. le code :

    Private Sub CommandButton1_Click()

    End Sub

    est généré. Ajoute la ligne :

      UserForm1.Show

    (Userform1 est le nom du userform.)

    Daniel

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

    0 commentaires Aucun commentaire
  3. Anonyme
    2021-01-05T19:22:28+00:00

    Re-bonjour Daniel,

    Je travaille maintenant avec l'onglet "Développeur". J'y vais un peu à tâtons, j'essaie de comprendre des textes et je procède par essaie-erreur.

    J'ai peut-être procédé à l'envers. En premier, je devrais te dire ce que je veux faire. Tu pourrais me dire si c'est possible ou non. 

    Dans ma feuille, en cliquant un bouton spécifique, je veux qu'un pop-up apparaisse, que l'utilisateur coche son choix et que son choix se transfert dans une case déterminée.

    J'ai trouvé et créé un "UserForm", créé un beau petit modèle qui correspondrait au pop-up que je veux afficher. 

    La question, en cliquant un bouton spécifique sur ma feuille, est-il possible de voir apparaitre ce pop-up, de sélectionner et qu'il s'exécute. Et comment s'appel ce bouton.

    Dans "Insérer", il y a 2 groupes de boutons. Ceux du haut semblent adresser un formulaire (UserForm). Le premier, "Bouton (Contrôle de formulaire" semble adresser une macro. Mais mon UserForm n'apparaît pas dans la liste. Faut-il faire une macro pour le faire apparaître dans la feuille?

    Si oui, comment faire?

    Merci de me répondre.

    Michel Brodeur

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

    0 commentaires Aucun commentaire
  4. Anonyme
    2021-01-05T16:18:17+00:00

    Bien le bonjour Daniel, merci pour ta réponse.

    Je me révise et te reviens plus tard avec les résultats.

    Salutations.

    Michel

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

    0 commentaires Aucun commentaire
  5. DanielCo 107.7K Points de réputation
    2021-01-05T14:45:15+00:00

    Bonjour,

    Ce que tu as mis sur la feuille est un "bouton bascule", pas une case à cocher. Pour référencer une case à cocher "checkbox1" sur la feuille "Feuil1" :

    Sheets("Feuil1").CheckBox1.Value

    Cordialement.

    Daniel

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

    0 commentaires Aucun commentaire