alimentation combobox suite tri listbox

guyt

XLDnaute Nouveau
Bonjour à tous,

Je viens vers vous suite à une difficulté que je n'arrive pas à résoudre.

J'ai 1 USF qui comporte 2 combo et 1 listbox.
Le 1er combo filtre la base de donnée et envoi le résultat sur la listbox et j'aurais souhaité que le 2ème combo s'alimente en fonction des éléments de la listbox et pas de la base de donnée MAIS je n'y arrive pas.

Pouvez-vous m'aider?

Je vous remercie par avance de l'aide que vous pourrez m'apporter.

Guyt
 

Pièces jointes

  • tri listbox avec combo.xls
    85 KB · Affichages: 137

Dranreb

XLDnaute Barbatruc
Re : alimentation combobox suite tri listbox

Bonjour.
que le 2ème combo s'alimente en fonction des éléments de la listbox
?

Ce qui me paraîtrait logique ce serait de n'afficher dans le second combobox que les désignations correspondant au fournisseur choisi dans le 1er, et dans la ListBox les lignes où les deux correspondent. N'est-ce pas cela que vous voulez ?

Cela dit, le but de l'userform n'étant apparemment qu'une recherche, pourquoi un simple filtre automatique ne ferait-il pas l'affaire ?
À +
 
Dernière édition:

guyt

XLDnaute Nouveau
Re : alimentation combobox suite tri listbox

Bonjour DRANREB,

en effet, il parait plus logique de n'afficher dans le second combobox que les désignations correpondant au fournisseur choisi dans le 1er.

Pourriez-vous m'aider pour finaliser le code?

Merci par avance
 

Dranreb

XLDnaute Barbatruc
Re : alimentation combobox suite tri listbox

Je me suis permis de tester deux nouveaux modules de classe avec vos données.
Avec ça, là, pour le coup on ne programme pour ainsi dire carrément plus rien dans l'userform pour gérer les ComboBox enchaînés !
Les premier tests sont encourageants.
Je me suis toutefois retrouvé dans une situation bloquée en effaçant le 1er combobox alors qu'ils contenaient chacun la seule valeur possible en fonction de l'autre. De plus la liste n'est pas garnie si les 2 ne sont pas renseignés. Si tout cela ne vous convient pas trop on en reviendra à une programmation plus classique n'utilisant que ma fonction DictionnArbo et non les nouveaux modules de classes.
À +
 

Pièces jointes

  • tri listbox avec combo-1.xls
    142.5 KB · Affichages: 108

guyt

XLDnaute Nouveau
Re : alimentation combobox suite tri listbox

Bonjour DRANREB,

Pour moi, c'est OK.
Le code reste assez complexe pour un non averti comme moi, je suis en train d'essayer de comprendre. De plus, dans ma base d'origine, il y a forcément plus de colonne que sur l'exemple :)33) et je souhaitait y intégrer un 3ème combo.
Peut-être une autre question : est-ce que cela fonctionne avec excel 2007 ou windows7? car j'ai eu des mauvaises surprises avec windows7 et les listview qui ne fonctionnent plus.
Un grand merci
 

Dranreb

XLDnaute Barbatruc
Re : alimentation combobox suite tri listbox

Bonjour
Oui je comprend que le plus gros du code vous paraisse complexe, mais ce que je cherche en général c'est qu'il n'y ait plus aucune complexité du tout dans la programmation utilisatrice finale. Et là, je crois qu'on atteint un sommet. Pour un 3ième Combobox il suffirait d'ajouter un Add pour ma classe de ComboBoxEnchaînés. Je n'ai pas de raison à priori de craindre que ça ne marche plus sur Excel 2007. N'oubliez pas de mettre toutes les fournitures nécessaires, notamment la référence "Microsoft Scripting Runtime".
Cordialement.
 

guyt

XLDnaute Nouveau
Re : alimentation combobox suite tri listbox

Bonjour,

Je vais encore avoir besoin de votre aide.
Hormis ma ligne de combobox en cascade concernant "désignation, fournisseur, modèle", j'aurais besoin d'une ligne de combobox en cascade avec "service et lieu dans service".
Pouvez-vous me donner la solution?
Est-il possible d'avoir dans le textbox le nombre de ligne contenue dans la listbox?
Merci encore
 

Dranreb

XLDnaute Barbatruc
Re : alimentation combobox suite tri listbox

Il devrait être possible de déclarer un 2ième objet ComboBoxEnchaînés et l'initialiser comme le premier.
Ce serait pour l'instant plus prudent que de proposer tous les ComboBox en ligne et que l'utilisateur choisisse de renseigner ceux qu'il veut, comme lister tout ce qui concerne une désignation et un service. Cependant c'est l'ambition de ma classe ComboBoxEnchaînés. Mais c'est encore sérieusement à mettre au point.
Est-il possible d'avoir dans le textbox le nombre de ligne contenue dans la listbox
Oui, c'est sa propriété ListCount. Elle vaut un de plus que le n° de la dernière ligne puisqu'elles commencent à 0.
Il est d'ailleurs utilisé dans ma boucle de renseignement de la liste juste avant Add pour avoir celui de juste après, non ?
Cordialement
 

Statistiques des forums

Discussions
312 206
Messages
2 086 208
Membres
103 158
dernier inscrit
laufin