Bonjour,
je suis novice en VBA
J'aurais voulu affecter la valeur True à l'une des 6 CheckBox.
Pour cela j'ai effectué les macro suivantes :
Mais j'aurais voulu garder le cochage lorsque je réouvre Excel
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91 Private Sub CheckBox2_Click() If CheckBox2.Value = True Then Sheets("DONNEES").Range("B73").Value = "X" CheckBox3.Value = False Sheets("DONNEES").Range("C73").Value = "" CheckBox4.Value = False Sheets("DONNEES").Range("D73").Value = "" CheckBox5.Value = False Sheets("DONNEES").Range("E73").Value = "" CheckBox6.Value = False Sheets("DONNEES").Range("F73").Value = "" CheckBox7.Value = False Sheets("DONNEES").Range("G73").Value = "" End If End Sub Private Sub CheckBox3_Click() If CheckBox3.Value = True Then Sheets("DONNEES").Range("c73").Value = "X" CheckBox2.Value = False Sheets("DONNEES").Range("b73").Value = "" CheckBox4.Value = False Sheets("DONNEES").Range("D73").Value = "" CheckBox5.Value = False Sheets("DONNEES").Range("E73").Value = "" CheckBox6.Value = False Sheets("DONNEES").Range("F73").Value = "" CheckBox7.Value = False Sheets("DONNEES").Range("G73").Value = "" End If End Sub Private Sub CheckBox4_Click() If CheckBox4.Value = True Then Sheets("DONNEES").Range("d73").Value = "X" CheckBox2.Value = False Sheets("DONNEES").Range("b73").Value = "" CheckBox3.Value = False Sheets("DONNEES").Range("c73").Value = "" CheckBox5.Value = False Sheets("DONNEES").Range("E73").Value = "" CheckBox6.Value = False Sheets("DONNEES").Range("F73").Value = "" CheckBox7.Value = False Sheets("DONNEES").Range("G73").Value = "" End If End Sub Private Sub CheckBox5_Click() If CheckBox5.Value = True Then Sheets("DONNEES").Range("e73").Value = "X" CheckBox2.Value = False Sheets("DONNEES").Range("b73").Value = "" CheckBox3.Value = False Sheets("DONNEES").Range("c73").Value = "" CheckBox4.Value = False Sheets("DONNEES").Range("d73").Value = "" CheckBox6.Value = False Sheets("DONNEES").Range("F73").Value = "" CheckBox7.Value = False Sheets("DONNEES").Range("G73").Value = "" End If End Sub Private Sub CheckBox6_Click() If CheckBox6.Value = True Then Sheets("DONNEES").Range("f73").Value = "X" CheckBox2.Value = False Sheets("DONNEES").Range("b73").Value = "" CheckBox3.Value = False Sheets("DONNEES").Range("c73").Value = "" CheckBox4.Value = False Sheets("DONNEES").Range("d73").Value = "" CheckBox5.Value = False Sheets("DONNEES").Range("e73").Value = "" CheckBox7.Value = False Sheets("DONNEES").Range("G73").Value = "" End If End Sub Private Sub CheckBox7_Click() If CheckBox7.Value = True Then Sheets("DONNEES").Range("g73").Value = "X" CheckBox2.Value = False Sheets("DONNEES").Range("b73").Value = "" CheckBox3.Value = False Sheets("DONNEES").Range("c73").Value = "" CheckBox4.Value = False Sheets("DONNEES").Range("d73").Value = "" CheckBox5.Value = False Sheets("DONNEES").Range("e73").Value = "" CheckBox6.Value = False Sheets("DONNEES").Range("f73").Value = "" End If End Sub
et j'ai essayé cela mais une erreur de compilation & de syntaxe
La logique ne doit pas être la bonne. Merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub UserForm_Initialize() UserForm1.CheckBox2.Value = True If Sheets("DONNEES").Range("b73").Value="X" End If
Partager