Déclencher l'évènement Click avec 1 valeur dans une combo box
Résolu
Morgan67700
Messages postés
30
Date d'inscription
Statut
Membre
Dernière intervention
-
Morgan67700 Messages postés 30 Date d'inscription Statut Membre Dernière intervention -
Morgan67700 Messages postés 30 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis un peu bloqué lors de la programmation de mon userform.
La combobox nommée "COMBO" charge bien les données selon les critères et sélections précédentes.
Je souhaiterai que:
- Quand plusieurs valeurs sont possibles dans la combobox on vide le champs pour faire le choix. (Ça marche)
- Quand une seule valeur est possible dans la combobox, j'aimerai que la combobox prenne automatiquement cette valeur dans la liste et génére l'évenement "Click" (Private Sub COMBO_Click ()) pour alimenter les combobox d'après sans faire le click gauche avec la souris.
(L'unique valeur se place dans la combobox mais l'évenement Click ne se déclenche pas)
Y-a-t il une autre solution pour éviter de passer par l’événement "Private Sub COMBO_Click ()"?
Le problème est que le fait de mettre cette valeur automatiquement dans la combobox, sans cliquer réellement avec la souris, n'alimente pas les autres combobox de valeurs.
Quelqu'un a une idée?
Merci,
Je suis un peu bloqué lors de la programmation de mon userform.
La combobox nommée "COMBO" charge bien les données selon les critères et sélections précédentes.
Je souhaiterai que:
- Quand plusieurs valeurs sont possibles dans la combobox on vide le champs pour faire le choix. (Ça marche)
- Quand une seule valeur est possible dans la combobox, j'aimerai que la combobox prenne automatiquement cette valeur dans la liste et génére l'évenement "Click" (Private Sub COMBO_Click ()) pour alimenter les combobox d'après sans faire le click gauche avec la souris.
(L'unique valeur se place dans la combobox mais l'évenement Click ne se déclenche pas)
If COMBO.ListCount > 1 Then ' Lorsque la combobox a plusieurs choix dans la liste COMBO.Value = "" ' Vide la combobox pour choisir une valeur parmi les autres possibilitées ElseIf COMBO.ListCount = 1 Then COMBO.List(0).Click ' Il y a une erreur mais sans cette ligne la combobox affiche bien l'unique valeur mais je souhaiterai aussi déclencher l'évenement "Private Sub COMBO_Click ()" ou un évènement similaire End If
Y-a-t il une autre solution pour éviter de passer par l’événement "Private Sub COMBO_Click ()"?
Le problème est que le fait de mettre cette valeur automatiquement dans la combobox, sans cliquer réellement avec la souris, n'alimente pas les autres combobox de valeurs.
Quelqu'un a une idée?
Merci,
A voir également:
- Vba mouse click
- Auto mouse click - Télécharger - Divers Utilitaires
- Move mouse - Télécharger - Utilitaires
- Ghost mouse - Télécharger - Divers Utilitaires
- Automatic mouse and keyboard - Télécharger - Divers Utilitaires
- Click&clean - Télécharger - Nettoyage
2 réponses
Ok j'ai trouvé, la solution était :
Pour déclencher la procédure évènementielle il ne faut pas oublier d'enlever le "Private" du "Private Sub".
Le code complet est donc:
CallByName Feuil1, "COMBO_Click", VbMethod
Pour déclencher la procédure évènementielle il ne faut pas oublier d'enlever le "Private" du "Private Sub".
Le code complet est donc:
If COMBO.ListCount > 1 Then ' La combobox a plusieurs choix dans la liste COMBO.Value = "" ' Vide la combobox pour pouvoir choisir une valeur de la liste ElseIf COMBO.ListCount = 1 Then CallByName Feuil1, "COMBO_Click", VbMethod ' Déclenche l'évenement "Sub COMBO_Click ()" End If
La combobox en question (COMBO) est remplie avec l'évènement "Private Sub COMBO_0_Click () " de la combobox précédente (COMBO_0). Le code se trouve ci-dessous:
J'aimerai simplement trouver une solution pour afficher l'unique valeur de la combobox COMBO lorsqu'il n'y en a qu'une et trouver le moyen de provoquer l'évènement "Private Sub COMBO_Click () " en vba car sans cliquer dessus avec la souris ça ne fonctionne pas si j'affiche uniquement la valeur sélectionnée.