Posez votre question Signaler

UserForm Excel, CheckBox [Résolu]

zebulon2503 1103Messages postés 17 avril 2008Date d'inscription 26 janvier 2012Dernière intervention - Dernière réponse le 26 mai 2009 à 14:57
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
Lire la suite 

UserForm Excel, CheckBox »

2 réponses
Réponse
+0
moins plus
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+
zebulon2503- 26 mai 2009 à 14:57
Ouep, ca marche. Merci pour ta réponse, j'aurais du y penser :(
A+
Zebu
Ajouter un commentaire
Ce document intitulé « UserForm Excel, CheckBox » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?