bonjour,
Nul en vba, j'ai besoin d'obtenir un résultat mais je ne parviens pas à illucider le bug qui m'empéche d'aboutir.

au regard du code ci-dessous, je souhaiterais ceci:

checkbox1 à true(checkbox2 false) alors, quand clic bouton, b1 en jaune

checkbox2 à true (checkbox1 false) alors, quand clic bouton, b2 en bleu

checkbox1 et checkbox2 à true alors, quand clic bouton, b1 en jaune et b2 en bleu

et uniquement si les 2 sont à false, alors
MsgBox "rien n'est coché"

le bug dans le code ci-dessous est que, quand les 2 sont cochés, je n'ai que b1 jaune qui s'active

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Private Sub CommandButton1_Click()
If CheckBox1.Value = True Then
        Range("B1").Select
    With Selection.Interior
        .ColorIndex = 6
        .Pattern = xlSolid
    End With
 
    ElseIf CheckBox2.Value = True Then
        Range("B2").Select
    With Selection.Interior
        .ColorIndex = 8
        .Pattern = xlSolid
    End With
 Else
 MsgBox "rien n'est coché"
 End If
 End Sub
Merci à ceux qui sauront éclairer ma lanterne.