Bonjour,
Après avoir parcouru le forum qui a résolu plusieurs de mes soucis, il m'en reste un où je coince.
Mon but est de cascader 2 ComboBox, le choix de la première déterminant les options de la seconde, et que le choix de la seconde affiche dans d'autres cellules, les infos correspondant à ce dernier dans une matrice qui dépend justement de la valeur de la première...![]()
C'était clair ? J'explique, ma première liste correspond au nom d'un budget auquel correspond des sous-budget sélectionnables dans la seconde liste. Le choix de ce sous-budget doit afficher son montant et sa date de validité.
J'ai commencé par utiliser les outils formulaires, là, aucun soucis pour afficher les infos (grâce à la fonction index([matrice];[no_ligne]) ), mais impossible de lier les 2 listes, du coup, je me suis rabattu sur les objets de contrôle.
J'ai donc créé mes 2 ComboBox et dans la première j'ai mis le code suivant :
"D8" étant ma cellule de référence de ma ComboBox2 pour en afficher le résultat (qui se fait directement contrairement à la liste déroulante des outils formulaire).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub ComboBox2_Change() ComboBox3.Value = Null ComboBox3.ListFillRange = Range("D8").Value End Sub
Ensuite, dans ma feuille avec mes différentes matrices listant les sous-budget, j'ai nommé chaque matrice avec le nom correspondant du budget afin de pointer directement dessus sans avoir à le mettre en "dur" dans le code. Déjà, s'il y a une autre manière, je suis open, mais ça fonctionne donc...
Mon principal problème est de pouvoir afficher les données correspondant au sous-budget étant donné qu'il n'y a plus de référence d'index du coup, j'ai testé la formule suivante, mais il ne fonctionne pas :
"H8" étant la cellule de référence de ma ComboBox3 et "Tables" ma feuille avec les matrices.
Code : Sélectionner tout - Visualiser dans une fenêtre à part =RECHERCHEV(H8;CONCATENER("Tables!";D8);1)
Evidement, si je peux me passer d'une formule et mettre ça directement dans le code, là, ça m'arrange, mais je ne sais pas comment récupérer les données dans la bonne matrice (même si la seconde ComboBox a sélectionné la ligne).
Voilà, c'est un peu long, mais je voulais être clair.
La question optionnelle, histoire de bien finir, est-il possible de masquer la feuille Tables sans causer de soucis dans les listes déroulantes ?![]()
Partager