VBA EXCEL - choisir un checkbox

Résolu
geraldao Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
geraldao Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, à tous, voila j'ai sur un formulaire plusieurs checkbox (20 au total) et je souhaiterais que ma variable ( VRB) soit incrémentée du "caption" du checkbox qui a été coché !!!!

Est ce bien clair ???? pour moi oui mais ......

Merci a vous.

5 réponses

amigo
 
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.
0
geraldao
 
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.
0
geraldao
 
une formule generique du style => if chekbox1 or checkbox2 then vrb = active.checkbox.caption !!!!

;-)
0
amigo
 
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.
0
geraldao Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   > amigo
 
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
0
amigo
 
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.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
geraldao Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
OK merci pour tout !!
0