XL 2016 Comment gérer des CheckBoxes à l'alternat ?

Dudu2

XLDnaute Barbatruc
Bonjour,

J'ai du bricoler un flag et une séquence complexe pour pouvoir, dans un UserForm, gérer 2 ou plus de checkboxes dont l'une exclut les autres en 1 seul clic.
N'y a-t-il pas plus simple. Je n'y arrive pas ! Même en désactivant les évènements, la valorisation d'une CheckBox provoque son évènement Click().
VB:
Private Sub CheckBox1_Click()
    'MsgBox "Enter CheckBox1_Click - NotRealClick = " & NotRealClick
    Call OffCheckBox(Me.CheckBox2, Me.CheckBox3)
End Sub

Private Sub CheckBox2_Click()
    'MsgBox "Enter CheckBox2_Click - NotRealClick = " & NotRealClick
    Call OffCheckBox(Me.CheckBox1, Me.CheckBox3)
End Sub

Private Sub CheckBox3_Click()
    'MsgBox "Enter CheckBox3_Click - NotRealClick = " & NotRealClick
    Call OffCheckBox(Me.CheckBox1, Me.CheckBox2)
End Sub

'-----------------------------------------
'Décoche les CheckBoxes passée en argument
'-----------------------------------------
Private Sub OffCheckBox(ParamArray TabChB() As Variant)
    Static NotRealClick As Boolean
    Dim ChB As Variant
   
    If NotRealClick = False Then
        NotRealClick = True
        For Each ChB In TabChB
            If ChB.Value Then ChB.Value = False
        Next ChB
        NotRealClick = False
    End If
End Sub
 

Pièces jointes

  • CheckBoxes Exclusives.xlsm
    19.4 KB · Affichages: 16
Dernière édition:

Dudu2

XLDnaute Barbatruc
Bonjour,
Je reviens sur le sujet, juste pour information, car j'ai eu à gérer 2 groupes indépendants d'options.
J'ai essayé avec les boutons d'options et, malgré des tutos (Ctrl + clic gauche etc...) pour créer 2 groupes indépendants dans un UserForm j'ai galéré sans succès.
Je suis donc revenu au système CheckBoxes et au code du Post #1 pour pouvoir m'en sortir.
 

cp4

XLDnaute Barbatruc
Bonjour fanfan38 ;), Dudu2:),

Comme te l'a signalé Fanfan39, tu mets les boutons dans des frames.
Touche Ctrl pour dupliquer les boutons d'option.
dudu.gif
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 977
dernier inscrit
Hermet