Office 365 Liste déroulante en cascade

clem67

XLDnaute Nouveau
Bonjour,
la question a déjà été posée de nombreuses fois sur le net, mais je n'ai rien trouvé correspondant à mon cas, je m'explique :

Dans une feuille de paramétrage de mon classeur, je dispose de plusieurs tableaux.
Le premier tableau est une liste simple de FAMILLES de produits (Electrique, Hydraulique, etc...)
Le second tableau est une liste de SOUS-FAMILLES ayant en colonne chaque FAMILLE. Un "x" est saisi dans la cellule pour laquelle la SOUS-FAMILLE appartient à la FAMILLE.

Par exemple, ça se présente dans ce genre là :

Sous-FamilleElectriqueHydraulique
Voyantx
Tuyaux
Diversxx


Dans mon tableau principal, j'ai donc une liste déroulante listant toutes les FAMILLES.
Là où mon problème se pose, c'est que dans la 2e liste déroulante, je souhaiterai les SOUS-FAMILLES appartenant à cette famille
- Pour Elec : Voyant et Divers
- Pour Hydr : Tuyau et Divers

Je souhaite éviter le VBA autant que possible pour ce classeur.

J'ai essayé quelque chose avec des formules INDEX et EQUIV dans ma validation de données, mais je n'ai évidemment que le premier résultat.

Voici ce que j'ai actuellement dans la validation de données :
Code:
=INDEX(INDIRECT("SousFamille[Sous-famille]");EQUIV("x";INDIRECT(CONCAT("SousFamille[";$N2;"]"));0))
Cette ligne fonctionne, mais uniquement pour le premier résultat trouvé.

Merci d'avance pour vos lumières :)
 

djidji59430

XLDnaute Accro
Bonjour à tous,

C'est quoi, l’intérêt de ton second tableau ?
Si tu sais mettre une croix dans une cellule et que tu sais pourquoi,, tu peux directement faire une liste !
Pourquoi faire simple quand .......


Crdlmt
 

clem67

XLDnaute Nouveau
ok, admettons alors que j'ai mon tableau SousFamilles comme suivant :
ElectriqueHydraulique
VoyantTuyau
DiversDivers

J'appelle donc ma liste avec ça : =INDIRECT("SousFamilles[" & $M2 & "]") avec M2 le champ qui contient l'entête de la colonne concernée (donc Electrique ou Hydraulique).
Ça marche très bien, sauf que j'ai des lignes vides dans ma liste et que je n'arrive pas à les enlever.

J'ai essayé avec DECALER et NBVAL, mais je n'arrive à rien. Tous les exemple que j'ai vu se font avec des appels de cellule type A1 etc...
J'aimerai utiliser plutôt les appellations "tableau"...sauf si pas le choix

Merci
Clem
 

clem67

XLDnaute Nouveau
merci pour ton fichier.
en effet, de mon côté, j'avais tout mis dans un tableau commun. Du coup, il y a ces cellules vides...
Je pense que je vais effectivement faire comme dans ton exemple. Je ne pensais pas que ce serait si compliqué à gérer et pour ce fichier, je veux à tout prix éviter le VBA.
Merci pour ton aide précieuse :)
 

Discussions similaires


Haut Bas