Je sollicite une aide face à un problème que je rencontre en ce qui concerne l’ergonomie de mon code VBA sur Excel :
J'utilise une UserForm contenant 40 CheckBox, et j'ai une fonction a utiliser sur chacune des CheckBox quand on coche ou décoche la case, et mon code ressemble a ça:
Private Sub CheckBox1_Click()
CBoxChange (1)
End Sub
Private Sub CheckBox2_Click()
CBoxChange (2)
End Sub
Private Sub CheckBox3_Click()
CBoxChange (3)
End Sub
Je cherche une méthode qui m’éviterai d'avoir a taper 40 fois la même chose, genre
For each CheckBox_Change
Si quelqu'un peut m'aider, ça simplifierai grandement la lecture de mon code.
Merci d'avance a tous ceux pouvant m'apporter leur lumière.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ibenny
Le dimanche 08 Janvier 2017 à 23:59 par krad007 :
Bonjour a tous, Je sollicite une aide face à un problème que je rencontre en ce qui concerne l’ergonomie de mon code VBA sur Excel : J'utilise une UserForm contenant 40 CheckBox, et j'ai une fonction a utiliser sur chacune des CheckBox quand on coche ou décoche la case, et mon code ressemble a ça: Private Sub CheckBox1_Click() CBoxChange (1) End Sub Private Sub CheckBox2_Click() CBoxChange (2) End Sub Private Sub CheckBox3_Click() CBoxChange (3) End Sub Je cherche une méthode qui m’éviterai d'avoir a taper 40 fois la même chose, genre For each CheckBox_Change Si quelqu'un peut m'aider, ça simplifierai grandement la lecture de mon code. Merci d'avance a tous ceux pouvant m'apporter leur lumière.
Private Sub CheckBox1_Click() CBoxChange 1 End Sub Private Sub CheckBox2_Click() CBoxChange 2 End Sub Private Sub CheckBox3_Click() CBoxChange 3 End Sub Private Sub CBoxChange(Box As Byte) Select Case Box Case 1 code Case 2 To 5 code Case 6, 8, 10 code Case Is > 10 code Case Else code End Select End Sub
Le dimanche 08 Janvier 2017 à 23:59 par krad007 :
> Bonjour a tous,
>
> Je sollicite une aide face à un problème que je rencontre en ce
> qui concerne l’ergonomie de mon code VBA sur Excel :
>
> J'utilise une UserForm contenant 40 CheckBox, et j'ai une fonction a utiliser
> sur chacune des CheckBox quand on coche ou décoche la case, et mon code
> ressemble a ça:
>
> Private Sub CheckBox1_Click()
> CBoxChange (1)
> End Sub
>
> Private Sub CheckBox2_Click()
> CBoxChange (2)
> End Sub
>
> Private Sub CheckBox3_Click()
> CBoxChange (3)
> End Sub
>
> Je cherche une méthode qui m’éviterai d'avoir a taper 40
> fois la même chose, genre
> For each CheckBox_Change
>
> Si quelqu'un peut m'aider, ça simplifierai grandement la lecture de mon
> code.
>
> Merci d'avance a tous ceux pouvant m'apporter leur lumière.
Private Sub CheckBox1_Click()
CBoxChange 1
End Sub
Private Sub CheckBox2_Click()
CBoxChange 2
End Sub
Private Sub CheckBox3_Click()
CBoxChange 3
End Sub
Private Sub CBoxChange(Box As Byte)
Select Case Box
Case 1
code
Case 2 To 5
code
Case 6, 8, 10
code
Case Is > 10
code
Case Else
code
End Select
End Sub
Bonjour a tous, Je sollicite une aide face à un problème que je rencontre en ce qui concerne l’ergonomie de mon code VBA sur Excel : J'utilise une UserForm contenant 40 CheckBox, et j'ai une fonction a utiliser sur chacune des CheckBox quand on coche ou décoche la case, et mon code ressemble a ça: Private Sub CheckBox1_Click() CBoxChange (1) End Sub Private Sub CheckBox2_Click() CBoxChange (2) End Sub Private Sub CheckBox3_Click() CBoxChange (3) End Sub Je cherche une méthode qui m’éviterai d'avoir a taper 40 fois la même chose, genre For each CheckBox_Change Si quelqu'un peut m'aider, ça simplifierai grandement la lecture de mon code. Merci d'avance a tous ceux pouvant m'apporter leur lumière.
Private Sub CheckBox1_Click() CBoxChange 1 End Sub Private Sub CheckBox2_Click() CBoxChange 2 End Sub Private Sub CheckBox3_Click() CBoxChange 3 End Sub Private Sub CBoxChange(Box As Byte) Select Case Box Case 1 code Case 2 To 5 code Case 6, 8, 10 code Case Is > 10 code Case Else code End Select End Sub