UserForm Excel, CheckBox

Résolu
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   -  
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   -
Salut,

j'ai un petit problème dans mon programme, je cherche depuis ce matin et n'arrive pas à résoudre...
Voilà l'histoire, j'ai un UserForm (appelé Departments) qui contient 5 CheckBox (case à cocher) et 2 boutons (OK de validation et Cancel pour annuler).

J'aimerais en cliquant sur OK que suivant les cases cochées mon programme lance différentes procédures (en passant en argument des variables différentes suivant les cases cochées), mais ca bug, pas moyen de passer les variables en paramètre. Voici le code :

Private Sub CheckBox1_Click() si la 1ere case est cochée, mettre "a" à 1
Dim a As Integer
a = 1
End Sub

Private Sub CheckBox2_Click() si la 2e case est cochée, mettre "b" à 1
Dim b As Integer
b = 1
End Sub

Private Sub CheckBox3_Click() si la 3e case est cochée, mettre "c" à 1
Dim c As Integer
c = 1
End Sub

Private Sub CheckBox4_Click() si la 4e case est cochée, mettre "d" à 1
Dim d As Integer
d = 1
End Sub

Private Sub CheckBox5_Click() si la 5e case est cochée, mettre "e" à 1
Dim e As Integer
e = 1
End Sub

Private Sub OK_Click(a, b, c, d, e As Integer) Fonctions à lancer avec "OK" avec a, b, c, d et e en paramètre
If a = 1 Then
    Call EDSEA
End If
If b = 1 Then
    Call EDSEB
End If
If c = 1 Then
    Call EDSEL
End If
If d = 1 Then
    Call EDSEP
End If
If e = 1 Then
    Call EDSES
End If
End Sub

Private Sub Cancel_Click() arrêt du UserForm si "Cancel"
Unload Me
End Sub

Suivant les valeurs de a, b, c, d et e, il faut que je lance une ou plusieurs sous procédures contenues dans un module séparé.
Tout ce code est dans le code du UserForm.

Si quelqu'un pouvait me conseiller svp...

Merci

Zebu
A voir également:

1 réponse

pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Bonjour,

A priori il suffit de tester dans le OK si les checkbox sont cochées ou non comme cela :

Private Sub OK_Click()
If CheckBox1 Then
    Call EDSEA
End If
If CheckBox2 Then
    Call EDSEB
End If
If CheckBox3 Then
    Call EDSEL
End If
If CheckBox4 Then
    Call EDSEP
End If
If CheckBox5 Then
    Call EDSES
End If
End Sub


Il n'est donc pas utile d'initialiser des variables a,b,c,d,e

A+
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Ouep, ca marche. Merci pour ta réponse, j'aurais du y penser :(
A+
Zebu
0