Remplir listbox depuis control combobox

Résolu/Fermé
hind - 15 oct. 2013 à 11:40
melanie1324 Messages postés 1505 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 - 15 oct. 2013 à 14:17
Bonjour,



<cela fait des jour que je tourne en rond sans trouver de solution

au fait j'ai un userform ou j'ai un combobox "scenario type" et une listebox "devise"
mon combobox s'alimente des différents scenario depuis la feuil1 ( sachant que ces scénarios représentent la 1 ére ligne du tableau (en tete de colonne)

pour chaque scénrio type correspond un certain nombre de devises

mon souhait serait d'afficher dans la listebox les devises correspondant au scénario selectionné dans al combobox


au fait mon tableau dans la feuille 1 se présente comme ca:

scenariotype1 scenariotype2 scenariotype3 ....
euro euro euro
CAD usd
GBP ....
AUD


merci bcp pour votre aide
A voir également:

2 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
15 oct. 2013 à 13:43
Bonjour,

un exemple avec des plages de cellules nommées:

https://www.cjoint.com/c/CJpnQ4EQsrc
0
melanie1324 Messages postés 1505 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 154
15 oct. 2013 à 13:44
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
0
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
0
melanie1324 Messages postés 1505 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 154
15 oct. 2013 à 14:08
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
0
sincérement un GRAND merci melanie

ca marche nickel

ca me fait un soucis à régler en moins

merci bcp:)
0
melanie1324 Messages postés 1505 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 154
15 oct. 2013 à 14:17
de rien mets le ren résolu alors stp.
0