Liste déroulante Dynamique et en cascade (avec si possible choix multiple)

Bonjour tout le monde,

Je viens vers vous avec une nouvelle problématique,

J'ai un fichier dans lequel j'ai quelques données que je retrouve dans des onglets cachés ("Données" pour le n° et nom du four / "Matière" pour les matières / "Epaisseurs" pour les épaisseurs). Ces données me servent pour faire des listes déroulantes.

Lorsqu'une personne va rentrer dans l'onglet "Généralités" il tape son n° fournisseur qu'il connait cela va rechercher automatiquement son nom associé (grâce à l'onglet "Données")

Suite à ça ma liste déroulante Matière dans la colonne A de l'onglet "Généralités" va rechercher les valeurs pour ce fournisseur (0 soucis à ce niveau j'ai réussis à faire le truc de manière dynamique)

Mon problème c'est le suivant, une fois que la personne va choisir sa matière j'aimerais que là aussi ma liste déroulante des épaisseurs s'adapte par rapport aux données dans l'onglet "Epaisseurs", le problème c'est que je coince sur celui-ci ... Les épaisseurs sont en fonction du fournisseur et de la matière. De plus, je peux avoir par exemple les mêmes épaisseurs chez un fournisseur pour du hêtre abouté et chêne abouté, j'ai donc décidé d'éviter d'avoir 45 colonnes dans mon onglet épaisseur et de l'appeler juste Abouté, mais pour aller faire une recherche sur ça, c'est la colle pour moi ..

Le top serait donc de réussir à faire le filtre de ma liste déroulante sur le fournisseur et la matière, mais est-ce possible sans VBA ? Je l'ignore, et si c'est via VBA (ou non) j'aimerais savoir s'il sera possible de réutiliser la formule pour faire une liste déroulante à choix multiple (dont je ne sais pas trop encore comment faire ) ?

Merci d'avance à vous et bonne journée !!

Cordialement,

Bonjour tout le monde,

Bon finalement j'ai décidé de créer plusieurs colonnes pour mes épaisseurs j'ai donc réussis via ma formule à rendre la chose dynamique, je n'ai pas encore essayé voir si je peux l'appliquer sur une liste déroulante à choix multiple

J'ai donc résolu pour le moment mon problème ;)

Bonne journée à tous,

Pour ceux qui veulent voir voici le fichier :

C'était fait, ça part.
Une contribution pour montrer qu'on peut traiter des nombres comme des lettres. Cette macro permet de retrouver un nombre parmi les 10000 qui se trouvent dans l'onglet Datas.

33ldauto.xlsm (141.99 Ko)

Bonjour Optimix,

Pour le coup je ne comprends pas trop ta réponse

J'ai du mal exprimé mon problème car ça ne répond pas à mon besoin :/

Merci tout de même à toi

Nous sommes quittes, tu n'as pas du tout compris ma réponse et moi ta question malgré une bonne dizaine de lectures .

En fait, j'ai des listes déroulantes en cascade sur mon onglet "Généralités" une à partir de A8 jusqu'à A15 qui vient reprendre les matières en fonction du fournisseur (cellule B2)

Puis une autre liste déroulante (dans "Généralités" aussi) à partir de la cellule B8 jusqu'à B15 qui vient reprendre les épaisseurs en fonction de la matière (liste déroulante A8:A15) et du fournisseur (en B2)

Mes épaisseurs sont dans l'onglet "Epaisseurs" et mes matières dans l'onglet "Matière" pour la liste déroulante de Matière 0 problème avec ma formule :

=DECALER(Matière!$A$2;1;EQUIV(Généralités!$B$2;Matière!$2:$2;0)-1;NBVAL(DECALER(Matière!$A$2;1;EQUIV(Généralités!$B$2;Matière!$2:$2;0)-1;100;1));1)

ça va bien reprendre de manière dynamique mes matières en fonction de mon fournisseur en B2.

Par contre, j'ai eu du mal à faire la partie de la liste avec les épaisseurs car sur dans mon onglet "Epaisseurs" j'avais prit le partie de ne pas mettre en tête de colonne "B CHENE ABOUTE" et "B HETRE ABOUTE" car ils ont les mêmes données j'avais choisis de regrouper et de mettre sur une ligne "B" et sur celle du dessous "ABOUTE" dès lors ma formule :

=DECALER(Epaisseurs!$A$2;1;EQUIV(Généralités!$B$2&" "&Généralités!$A2;Epaisseurs!$2:$2;0)-1;NBVAL(DECALER(Epaisseurs!$A$2;1;EQUIV(Généralités!$B$2&" "&Généralités!$A2;Epaisseurs!$2:$2;0)-1;100;1));1)

N'était absolument pas viable, car la recherche se faisait sur : "B HETRE ABOUTE" (par exemple) ce qui ne ressort pas dans mon autre onglet ... Du coup je voulais savoir si une solution existé pour récupérer ça via VBA ou autre pour éviter de démultiplier mes colonnes dans l'onglet "Epaisseurs" mais au final j'ai fait le choix de rajouter des colonnes du moins en attendant de voir si une autre solution facile existée, ce qui n'est visiblement pas le cas

Si je ne suis pas toujours explicite n'hésites pas à me le dire c'est assez dur d'expliquer le problème alors je me doute que le comprendre ne doit pas être simple aussi

Je pense que les choses sont plus claires maintenant. Trop compliqué pour ma petite tête.

Bonjour Optimix,

Il n'y a aucun problème les formules font le taff donc pour le moment pas de soucis ;) je pense qu'il faudrait énormément de lignes pour que ce soit plus simple de passer par du VBA que par ce que je viens de faire, et comme normalement ça ne devrait jamais être trop lourd ça devrait le faire !

Merci à toi en tout cas !

Et bonne journée :)

Rechercher des sujets similaires à "liste deroulante dynamique cascade possible choix multiple"