Liste déroulante dynamique en cascade sans plage nommée et sans macro

Messages postés
2
Date d'inscription
mardi 11 juin 2019
Statut
Membre
Dernière intervention
14 juin 2019
- - Dernière réponse : via55
Messages postés
11192
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 octobre 2019
- 21 juin 2019 à 17:53
Bonjour à tous,

J'ai un soucis pour créer une liste déroulante dynamique en cascade mais sans plages nommées.
J'ai fait le tour des forums et je n'ai pas encore trouvé ce que je cherche sans passer un code VBA/macro.

En fait, j'ai une base de données des fournisseurs et de sites. Un fournisseur peut avoir plusieurs sites différents.

Mon objectif est de pouvoir récupérer la liste (liste déroulante) des sites correspondants à un fournisseur choisie (liste déroulante). Ceci bien sûre en utilisant les données de la base.

Vu le nombre de fournisseurs, il n'est pas possible de créer plusieurs plages nommées avec les sites correspondants.

Sans recourir aux macros, quelqu'un/e peut m'aider sur ce sujet ?

Je veux bien attacher un prototype du fichier pour mieux comprendre mon attente. Mais, vu que c'est mon 1er post, je ne sais pas comment procéder. J'espère que la capture d'écran est suffisante.

Merci d'avance pour le coup de main.



Configuration: Windows / Edge 16.16299
Afficher la suite 

9 réponses

Meilleure réponse
Messages postés
11192
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 octobre 2019
1452
1
Merci
Bonjour

Un exemple à adapter à tes besoins
https://mon-partage.fr/f/5sXU1TK7/

Si tu n'arrives pas, poste ton fichier sur le même site de partage, fais créer un lien que tu copies et reviens coller ici

Cdlmnt
Via

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 62618 internautes nous ont dit merci ce mois-ci

Kaly_CCM
Messages postés
2
Date d'inscription
mardi 11 juin 2019
Statut
Membre
Dernière intervention
14 juin 2019
-
Bonjour via55,

Je vous remercie pour votre exemple.

Ca répond bien à ma requête.

Cdlt,
Commenter la réponse de via55
Messages postés
488
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
31 août 2019
3
0
Merci
Bonjour à vous,

J'ai un problème similaire mais mes données ne sont sont organisées de la même façon.
J'ai en partie réussit mais j'ai une erreur sur l'une de mes deux formules.
Avec ce lien un exemple de mon classeur :

https://www.cjoint.com/c/IFvmkUt6NyW

D'avance merci pour votre aide.
Cordialement
Mistral
Commenter la réponse de Mistral_13200
Messages postés
11192
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 octobre 2019
1452
0
Merci
Bonjour,

Dans la validation de données de G9 remplace la source =Souscat par la formule :
DECALER(Catégories!$A2;;EQUIV($E$9;Catégories!$A$1:$M$1;0)-1;NBVAL(DECALER(Catégories!$A2:$A10;;EQUIV($E$9;Catégories!$A$1:$M$1;0)-1)))

Cdlmnt
Via
Commenter la réponse de via55
Messages postés
488
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
31 août 2019
3
0
Merci
Merci pour ta réponse mais ça ne fonctionne pas.

Pour tester ta formule je l'ai rentrée dans une cellule, en mettant le signe = au début et la j'ai une erreur #VALEUR!
alors que je m'attends à trouver la première valeur de la catégorie retenue en E9.
Commenter la réponse de Mistral_13200
Messages postés
11192
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 octobre 2019
1452
0
Merci
Re

Oui bien sûr il faut le = qui avait sauté à la frappe et ça fonctionne
Ton fichier avec la formule en validation de données
https://mon-partage.fr/f/ND9qgde1/


Commenter la réponse de via55
Messages postés
488
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
31 août 2019
3
0
Merci
PARFAIT !!!

J'ai juste rajouté 20 à la fin de la formule pour limiter à 20 lignes en dessous de chaque catégorie.

Une question : y a t il un moyen d'effacer la cellule G9 quand on change le choix de E9?
Commenter la réponse de Mistral_13200
Messages postés
11192
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 octobre 2019
1452
0
Merci
Pourquoi limiter ?? la formule prend en compte le nombre de valeurs dans la plage pour limiter la longueur aux seules valeurs disponibles

Effacer G9 au changement en E9 n'est possible que par macro

Commenter la réponse de via55
Messages postés
488
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
31 août 2019
3
0
Merci
Je limite pour ne pas avoir des listes trop longue et avec 20 je suis encore très large.

Pour la macro je suppose que c'est avec une Worksheet_Change qu'on doit le faire.
Je vais avancer sur mon projet et si tu le permet je reviendrais éventuellement vers toi pour cette macro.
Pour cette raison je laisse le sujet ouvert.

En tout cas mille merci à toi pour ton aide.
Mistral
Commenter la réponse de Mistral_13200
Messages postés
11192
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 octobre 2019
1452
0
Merci
Oui parfaitement avec Worksheet_Change
Ok reviens quand tu veux pour la suite

Commenter la réponse de via55