Tu peux aussi mettre tes valeurs en forme de base de données :
1ere colonne : le n° du cas
2e colonne : la valeur associée
Ensuite, tu parcours cette liste en remplissant ta source de la 2e combo suivant le cas entré dans la 1ere combo :
Code :
- sub combobox1.aprèsMiseAjour
- pour toutes les lignes du tableau faire :
- si Cellule(ligne, colonne1).Valeur = combobox1.Valeur alors
- combobox2.source=combobox2.source + Cellule(ligne, colonne2).Valeur
- fin si
- ligne suivante
- boucle
- fin sub
|
(excuse moi, je n'ai plus en tête la syntaxe pour faire ça en vba excel, mais l'idée est là)
Edit : si tu prends la peine de trier par ordre de cas après chaque ajout, tu peux rajouter une condition pour quitter la boucle dès le 1er changement de cas après que le cas donné par le combobox1 a été trouvé (combobox2.source différente de vide), pour éviter de parcourir la liste jusqu'au bout et améliorer la vitesse d'exécution :
Code :
- sub combobox1.aprèsMiseAjour
- pour toutes les lignes du tableau faire :
- si Cellule(ligne, colonne1).Valeur = combobox1.Valeur alors
- combobox2.source=combobox2.source + Cellule(ligne, colonne2).Valeur
- sinon si combobox2.source<>""
- sortir de la loop
- fin si
- ligne suivante
- boucle
- fin sub
|
Message édité par otobox le 07-04-2009 à 23:24:03
---------------
OtObOxBlOg - - - Etre seul à avoir tort c'est plus difficile, mais c'est bien plus beau que d'avoir raison avec une bande de cons