Ecrire codes pour CheckBoxs

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 !

Re : Ecrire codes pour CheckBoxs

Bonsoir,
Si j'ai bien compris, remplace les checkbox par des OptionButton, et dans la propriété des contrôles, affectes les à un groupe (GroupName), ils s'exclueront mutuellement.
A+
kjin
 
Re : Ecrire codes pour CheckBoxs

Re,

Merci, Hulk, merci Kjin.

Dis-moi Hulk , je peux cocher toutes CheckBoxs en même temps ?

Kjin je n'arrive pas à voir les GroupeName qui enveloppe chaque rubrique.

Comment récupérer les choix...expl :je coche Sortie, Normale et H
je souhaiterais récupérer ces choix pour les enregistrer sur une autre feuille dans le même classeur

à+
Christian
 
Re : Ecrire codes pour CheckBoxs

Re,

Version macro...

Christian, prends l'habitude de nommer tes contrôles, tu t'y retrouveras plus facilement... (je n'ai pas pris la peine de te le faire 😀)

Je suppose que si cette version joue, que tu aimerais qu'il copie vers la Feuil2 après la dernière ligne pleine ?

Si oui, je m'en retourne à Kjin, et de toutes manières une petite question pour Kjin ou un autre pro..

Avec le code du bouton du fichier joint, il ne devrait pas copier après la dernière ligne pleine ?

J'ai dû oublier quelque chose...

Merci pour vos réponses !

Hulk.
 

Pièces jointes

Re : Ecrire codes pour CheckBoxs

Bonsoir,
@Hulk
Je renomme pratiquement jamais des groupes de contrôles
Ici dans ton exemple, si tu veux mettre des "X" dans les colonnes de la feuille 2 correspondant aux checkbox cochées
Code:
Private Sub BtnCopier_Click()
With Sheets("feuil2")
Dl = .Range("A65000").End(xlUp).Row + 1 'nouvelle ligne
For i = 1 To 8
    Set Obj = Sheets("Feuil1").OLEObjects("CheckBox" & i).Object
    .Cells(Dl, i) = IIf(Obj = True, "X", "")
    Next
End With

End Sub
Pour l'exclusion mutuelle des checkbox
Code:
Private Sub CheckBox1_Click()
CheckBox2 = IIf(CheckBox1 = False, True, False)
End Sub
Private Sub CheckBox2_Click()
CheckBox1 = IIf(CheckBox2 = True, False, True)
End Sub
Sinon OptionButton
En vba on peut également envisager un Module de classe pour les OptionButton, reste que ça manque de précision de la part de Christian
A+
kjin
 
Dernière édition:
Re : Ecrire codes pour CheckBoxs

Salut,

Dans le cas de 2 choix incompatibles, les boutons d'option sont préférables comme le souligne kjin 😉.
Dans le cas de plus de 2 choix, tout dépend du ou.
Si le ou est exclusif, là encore les boutons d'option sont à privilégier.
S'il est inclusif, là, les cases à cocher s'imposent.

Dans le cas de 2 cases à cocher, on peut encore utiliser le code :
Code:
Private Sub CheckBox1_Click()
  CheckBox2  = Not CheckBox1 
End Sub
Private Sub CheckBox2_Click()
  CheckBox2 = Not CheckBox2
End Sub
Remarque : pour les 2 propositions, la première macro appelle la seconde qui appelle la première qui appelle ... mais sans grand impact. Par contre pour plus de 2 cases, cela se complique.

Ci-joint, un fichier exemple de ce qu'on peut faire !
 

Pièces jointes

Re : Ecrire codes pour CheckBoxs

Re, bonsoir le forum,

Merci, kjin, Hulk et fo_rum pour vos réponses, vos explications et vos solutions.

Mes excuses à Hulk, c'est vrai, j'ai oulié de remercier, par avance, les éventuels intervenants sur mon post d'hier 20h25.

Bien à vous.
Amicalement,
Christian
 
- 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

Discussions similaires

Réponses
18
Affichages
545
Réponses
4
Affichages
396
  • Question Question
XL 2013 MFC
Réponses
2
Affichages
164
Retour