Listes déroulantes en cascade

Bonjour à tous,

Je ne suis pas très calé niveau Excel, et j'aurais donc besoin de votre aide

Je souhaite réaliser une cascade de listes déroulantes faisant appel à des données sur des véhicules.

Mon objectif est que l'utilisateur choisisse le gabarit du véhicule, puis la marque, le modèle, et enfin la motorisation.

Les données correspondant au véhicule choisi (la puissance ou la masse par exemple) doivent ensuite apparaître pour être traitées automatiquement sous forme de graphes.

Je voudrais que les données soient appelées à partir d'une deuxième feuille, où sera finalement regroupée une base de données complète.

Je voudrais également que le contenu du menu déroulant varie selon le choix du menu précédent (du type citadine ->renault->clio...).

En cherchant un peu une solution sur le forum, je suis tombé sur ce lien : http://boisgontierjacques.free.fr/pages_site/listes_cascade.htm#LDInd

J'ai trouvé une solution qui m'a paru bien correspondre à mon problème (Fichier joint n°1).

J'ai donc créé un tableur test (fichier joint n°2) dans lequel j'ai tenté de recréer la solution à ma sauce. Eh ben forcément, ça fonctionne pas...

J'ai commencé par nommer les différents champs de valeurs, ainsi que le champs Liste_Gabarit avec la formule DECALER:

=DECALER(Données!$H$2;;;NBVAL(Données!$H:$H)-1)

J'ai ensuite créé la liste déroulante Gabarit, jusque là pas de souci ça fonctionne.

Je me suis basé sur la formule DECALER pour les autres listes déroulantes:

=DECALER(Marques;EQUIV(B1;Gabarits;0)-1;0;NB.SI(Gabarits;B1))

A partir de là, ça se corse:

- La deuxième liste me propose 2 fois renault et deux fois peugeot. Faut-il créer un tableau et un nom de champs, comme pour Liste_Gabarit? A ce moment-là il faudrait sûrement modifier la formule pour intégrer cette contrainte, mais comment?

- De même, la troisième liste me propose la Mégane quand j'ai sélectionné le gabarit citadine, et inversement...

- Enfin, pour intégrer la valeur de la puissance correspondant au choix du véhicule, j'ai utilisé la formule :

=INDEX(Puissances;EQUIV(1;(Gabarits=B1)*(Marques=B2)*(Modèles=B3)*(Motorisations=B4);0))

Mais elle ne fonctionne pas, je n'ai pas la valeur que je veux.

Voilà, encore une fois je suis novice, et j'ai surtout repris les formules pour les adapter à mon cas, je suis sûrement passé à côté de quelque chose.

En tout cas, je vous remercie d'avance pour votre aide!

Hutch1516

18dv-cascade-bd.zip (15.73 Ko)
17test1.xlsx (10.50 Ko)

Bonjour,

Pour Excel 2013 avec l'utilisation des segments.

Cdlt.

17test1.xlsx (15.18 Ko)

Bonjour,

un essai de ma part à base de macro et de filtres avancés.

Ps: les formules de résultats ne fonctionne plus faudra les modifiés car j'ai réutilisé les mêmes noms que tu avais pris pour les listes déroulantes.

Cordialement.

13test1.xlsm (18.15 Ko)

Bonjour,

Solution VBA

Cf PJ

Ceuzin

48dv4nivvba.xlsm (21.71 Ko)

Merci à vous pour vos réponses super rapides! Je vais étudier vos solutions de plus près et je reviendrai vers vous si j'ai d'autres questions.

Comme vos 3 solutions semblent bien fonctionner pour mon cas, je vais indiquer que le sujet est résolu.

Merci encore!

Hutch1516

Je reviens vers vous car j'ai un souci au niveau de la formule :

=INDEX(Puissance;EQUIV(1;(Gabarit=B1)*(Marque=B2)*(Modèle=B3)*(Motorisation=B4);0))

J'ai double-cliqué sur la case comme pour modifier la formule, et je suis sorti en appuyant sur "entrée". Au lieu d'avoir le bon résultat j'ai obtenu la valeur "#N/A", et depuis impossible de changer ça.

Pour la même formule, au niveau de la masse :

=INDEX(Masse;EQUIV(1;(Gabarit=B1)*(Marque=B2)*(Modèle=B3)*(Motorisation=B4);0))

j'ai remarqué qu'en sortant de la case en appuyant sur "échap" la valeur n'était pas modifiée, et la case fonctionne toujours.

Auriez-vous des explications?

Je vous remercie.

Hutch1516

édit : je rencontre ce problème dans le fichier de ceuzin.

Bonjour ça sent la formule matricielle,

revient dans la case de ta formule appuie sur F2 pour l'éditer et valide la par CTRL+SHIT+ENTREE pour voir si ça fonctionne.

Cordialement.

En effet, ça fonctionne!

Merci beaucoup!

Hutch1516

Rechercher des sujets similaires à "listes deroulantes cascade"