Remplir listbox depuis control combobox
Résolu
hind
-
melanie1324 Messages postés 1504 Date d'inscription Statut Membre Dernière intervention -
melanie1324 Messages postés 1504 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Remplir listbox multicolonne vba excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
2 réponses
Bonjour,
ce n'est pas compliqué à le faire.
Le plus simple serait de mettre ton fichier sur cjoint.com et tu mets le lien ici.
Mais voici l'idée.
imaginons que ton tableau est en feuille 1 et commence la première ligne
:
A B C
scenariotype1 scenariotype2 scenariotype3 ....
euro euro euro
CAD usd
GBP ....
AUD
dans ton formulaire, faut écrire une macro :
sub combobox_scénariotype_change 'le nom de ta combobox suivi de _change
listbox1.clear 'remplace listbox1 par le nom de ta listbox
' en fonction du choix de la combobox, on va cibler la colonne où se trouve les valeurs que tu veux afficher dans ta listbox
if combobox_scénariotype = "scénariotype1" then
col=1
else
if combobox_scénariotype = "scénariotype2" then
col=2
else
if combobox_scénariotype = "scénariotype3" then
col=3
end if
end if
end if
ligne = 2
'là on va rajouter toutes tes valeurs de ta listbox en fonction de la colonne définie précédemment
do while sheets(1).cells(ligne,col) <> ""
listbox1.additem cells(ligne,col)
ligne= ligne +1
loop
ens sub
ce n'est pas compliqué à le faire.
Le plus simple serait de mettre ton fichier sur cjoint.com et tu mets le lien ici.
Mais voici l'idée.
imaginons que ton tableau est en feuille 1 et commence la première ligne
:
A B C
scenariotype1 scenariotype2 scenariotype3 ....
euro euro euro
CAD usd
GBP ....
AUD
dans ton formulaire, faut écrire une macro :
sub combobox_scénariotype_change 'le nom de ta combobox suivi de _change
listbox1.clear 'remplace listbox1 par le nom de ta listbox
' en fonction du choix de la combobox, on va cibler la colonne où se trouve les valeurs que tu veux afficher dans ta listbox
if combobox_scénariotype = "scénariotype1" then
col=1
else
if combobox_scénariotype = "scénariotype2" then
col=2
else
if combobox_scénariotype = "scénariotype3" then
col=3
end if
end if
end if
ligne = 2
'là on va rajouter toutes tes valeurs de ta listbox en fonction de la colonne définie précédemment
do while sheets(1).cells(ligne,col) <> ""
listbox1.additem cells(ligne,col)
ligne= ligne +1
loop
ens sub
merci pour le retour rapide
en effet ,c'est ce qui me faut mais comment tu déclare la variable col et lig au debut ?
car moi au moment du IF combobox_scenario= "scenario1" je voulais faire reference à la cellule directement pour que cela reste dynamique et ne pas saisir a la main
je suis au bureau je n'arrive pas à mettre le fichier en piece jointe mais je le ferais des ce soir
si en attendant vous avez des idées mettez les moi en copie dans la réponse
un grand merci
en effet ,c'est ce qui me faut mais comment tu déclare la variable col et lig au debut ?
car moi au moment du IF combobox_scenario= "scenario1" je voulais faire reference à la cellule directement pour que cela reste dynamique et ne pas saisir a la main
je suis au bureau je n'arrive pas à mettre le fichier en piece jointe mais je le ferais des ce soir
si en attendant vous avez des idées mettez les moi en copie dans la réponse
un grand merci
Coucou,
je comprends alors le code que tu peux appliquer :
sub combobox_scénariotype_change 'le nom de ta combobox suivi de _change
listbox1.clear 'remplace listbox1 par le nom de ta listbox
col= 1
do while cells(1, col) <> combobox_scénariotype.value
col=col+1
loop
ligne = 2
'là on va rajouter toutes tes valeurs de ta listbox en fonction de la colonne définie précédemment
do while sheets(1).cells(ligne,col) <> ""
listbox1.additem cells(ligne,col)
ligne= ligne +1
loop
ens sub
je comprends alors le code que tu peux appliquer :
sub combobox_scénariotype_change 'le nom de ta combobox suivi de _change
listbox1.clear 'remplace listbox1 par le nom de ta listbox
col= 1
do while cells(1, col) <> combobox_scénariotype.value
col=col+1
loop
ligne = 2
'là on va rajouter toutes tes valeurs de ta listbox en fonction de la colonne définie précédemment
do while sheets(1).cells(ligne,col) <> ""
listbox1.additem cells(ligne,col)
ligne= ligne +1
loop
ens sub