VBA EXCEL - choisir un checkbox
Résolu/Fermé
geraldao
Messages postés
9
Date d'inscription
lundi 4 février 2008
Statut
Membre
Dernière intervention
16 février 2008
-
8 févr. 2008 à 21:27
geraldao Messages postés 9 Date d'inscription lundi 4 février 2008 Statut Membre Dernière intervention 16 février 2008 - 10 févr. 2008 à 22:03
geraldao Messages postés 9 Date d'inscription lundi 4 février 2008 Statut Membre Dernière intervention 16 février 2008 - 10 févr. 2008 à 22:03
5 réponses
Bonsoir,
En effet, c'est pas bien clair.
Tu peux toujours essayer ce code:
Option Explicit
Public vrb As String
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
vrb = CheckBox1.Caption
MsgBox vrb
End If
End Sub
Il faudra recopier cette procédure pour chaque CheckBox et remplacer l'appel à Msgbox par ta procédure qui va exploiter la variable vrb.
En effet, c'est pas bien clair.
Tu peux toujours essayer ce code:
Option Explicit
Public vrb As String
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
vrb = CheckBox1.Caption
MsgBox vrb
End If
End Sub
Il faudra recopier cette procédure pour chaque CheckBox et remplacer l'appel à Msgbox par ta procédure qui va exploiter la variable vrb.
Exactement ce que je fais mais a vrai dire je cherche à ne pas recopier la meme formule 50 fois, pensant qu'il existait une formule "générique" permettant de simplifier !!!
Enfin tant pis !! je copie ...
Merci a toi amigo.
Enfin tant pis !! je copie ...
Merci a toi amigo.
une formule generique du style => if chekbox1 or checkbox2 then vrb = active.checkbox.caption !!!!
;-)
;-)
Bonjour,
En fait, il faut savoir su tu veux gérer l'évènement au moment ou on clic sur la checkbox ou bien si tu veux recuperer les valeurs de toutes les checkbox une fois que tous les choix ont été fait.
Si tu veux gérer l'évènement click , il faut une procédue pour chaque checkox.
Si tu veux savoir quelles checkbox ont été marquées, une seule procedure activée par un bouton suffit.
ça dépend de l'utilisation que tu veux en faire.
Salut geraldao.
En fait, il faut savoir su tu veux gérer l'évènement au moment ou on clic sur la checkbox ou bien si tu veux recuperer les valeurs de toutes les checkbox une fois que tous les choix ont été fait.
Si tu veux gérer l'évènement click , il faut une procédue pour chaque checkox.
Si tu veux savoir quelles checkbox ont été marquées, une seule procedure activée par un bouton suffit.
ça dépend de l'utilisation que tu veux en faire.
Salut geraldao.
geraldao
Messages postés
9
Date d'inscription
lundi 4 février 2008
Statut
Membre
Dernière intervention
16 février 2008
>
amigo
10 févr. 2008 à 18:05
10 févr. 2008 à 18:05
re, en fait un formulaire s'ouvre est plusieurs actions sont a menées dessus et je gere toutes les infos à la fin donc oui une seule procédure...
Peux tu me montrer a quoi cela ressemble ?
Merci
Peux tu me montrer a quoi cela ressemble ?
Merci
Bonjour,
Sur la userform , tu place un commandButton "OK" par exemple, qui va fermer la userform et va tester les checkbox une à une.
Ca peut ressembler à ça si un seul choix declenche une ou plusieurs actions:
sub CommandButton1_click()
userform1.hide 'on ferme le formulaire
If checkbox1.value=true then
'instrunctions
'.
Else
'.
End if
If checkbox2.value=true then
'instrunctions
Else
'.
End if
'et ainsi de suite
End sub
Maintenant s'il y a beaucoup de checkbox et si la combinaison de plusieurs checkbox est possible, ç'est un peu plus compliqué.
Dans ces cas là, j'utilise la technique des drapeaux (flags pour les informaticiens). C'est un nombre vu en format binaire ("10010" par exemple) qui prend une certaine valeur en fonction du positionnement des bits ( 1 ou 0) et donc déclencher telle ou telle opération.
Il y a plus simple si les combinaisons possibles sont limitées avec des If Then Else End If imbriqués ou avec le sélectionneur Select Case End Select.
Ammuse toi bien.
Sur la userform , tu place un commandButton "OK" par exemple, qui va fermer la userform et va tester les checkbox une à une.
Ca peut ressembler à ça si un seul choix declenche une ou plusieurs actions:
sub CommandButton1_click()
userform1.hide 'on ferme le formulaire
If checkbox1.value=true then
'instrunctions
'.
Else
'.
End if
If checkbox2.value=true then
'instrunctions
Else
'.
End if
'et ainsi de suite
End sub
Maintenant s'il y a beaucoup de checkbox et si la combinaison de plusieurs checkbox est possible, ç'est un peu plus compliqué.
Dans ces cas là, j'utilise la technique des drapeaux (flags pour les informaticiens). C'est un nombre vu en format binaire ("10010" par exemple) qui prend une certaine valeur en fonction du positionnement des bits ( 1 ou 0) et donc déclencher telle ou telle opération.
Il y a plus simple si les combinaisons possibles sont limitées avec des If Then Else End If imbriqués ou avec le sélectionneur Select Case End Select.
Ammuse toi bien.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
geraldao
Messages postés
9
Date d'inscription
lundi 4 février 2008
Statut
Membre
Dernière intervention
16 février 2008
10 févr. 2008 à 22:03
10 févr. 2008 à 22:03
OK merci pour tout !!