Menu déroulant en cascade à 5 conditions

Bonjour,

j’aimerai avoir un enchaînement de 5 menus déroulants dépendant l’un de l’autre sans utiliser la fonction indirecte.

Est-ce que quelqu’un à une solution ?

Merci

121.xlsx (40.07 Ko)

Bonjour,

Les 5 listes seront constituées par filtre avancé !

Faut être un peu patient. Je teste chaque maillon au fur et à mesure, le 1er test sert à la constitution initiale de la liste suivante, on la nomme et 2e test après avoir intégré le nom... La 2e est bouclée, il en reste 3 (et le tri que je n'ai pas encore mis en place). Mais pour l'heure je vais passer côté cuisine...

@+. Cordialement.

Bonjour et bienvenue sur le forum

Bonjour à tous

Une proposition à tester. Te convient-elle ?

Bye !

241-v1.xlsm (32.78 Ko)

Bonjour à tous,

@ gmb,

L'objet Dictionary sous Mac ?

Bonne soirée.

Cdlt.

Bonsoir,

Salut Jean-Eric, gmb !

C'est vrai que le Mac n'appréciera pas trop le dico... !

Je n'en ai pas utilisé mais du coup ça me fait penser que j'ai eu un rejet par Mac des notations compactes entre crochets, et ça j'en utilise partout !!

Bon ! xdeca : si tu as d'emblée une erreur d'exécution sur une ligne contenant un nom entre crochets, par exemple [Source]..., tu essaies d'abord de le remplacer par Range("Source")....

Si ça marche, il n'y aura qu'à faire la même substitution partout.

Mais dans mon expérience antérieure, ça n'avait pas fonctionné ! C'est une expression type Names("Source").RefersToRange... qui avait fonctionné. Alors là tu me le signales, j'essaierai de trouver un biais plus rapide que la substitution systématique, l'expression est un peu longue...

J'en profite pour te signaler une petite anomalie liée à l'obtention des listes par filtrage : un choix Radiateur électrique en Type d'installation entraîne l'insertion dans la liste Type emeteur dépendante, outre les items associés à ce choix précédent, également les items associés au choix Radiateur électrique à accumulation du fait que le libellé du premier choix est totalement inclus dans le libellé du second. il faudrait une modification quelconque de Radiateur électrique de façon que ce libellé ne puisse être trouvé dans l'autre choix indiqué.

C'est le seul cas que j'ai pu voir dans le genre...

Mécanisme des listes : plages nommées :

Source : nomme la 1re colonne de ta base source, en-tête incluse.

Et des noms sont donnés à chaque liste utilisée en liste déroulante : Lst1En, Lst2Gén, Lst3Dis, Lst4Ins, Lst5Em.

Ces plages sont définies de façon dynamique (à voir dans le gestionnaire de noms).

Tri de la base source :

La base doit être triée, sur les 5 colonnes. Elle l'est, donc tant qu'il n'y a pas d'ajout ou retrait de lignes ou autre modification... pas besoin de la retrier.

J'ai placé un bouton (en F1) qui, lorsqu'on aura apporté des modifications, permet de lancer une procédure de tri, laquelle provoquera également la recomposition de la première liste de choix.

Utilisation :

Au départ, il n'y a de liste active que pour le Type Energie. Les 4 autre listes dépendantes sont vides.

Lorsqu'on fait un choix dans cette première liste, une procédure est lancée qui va composer la liste Type de générateur correspondant au choix fait, laquelle deviendra disponible et permettra de faire un 2e choix...

Même chose lorsqu'on fait ce 2e choix, il déclenchera la composition de la liste Type de distribution répondant aux 2 choix déjà effectués... Et ainsi de suite pour les choix suivants...

Si l'on efface un choix déjà fait, les choix dépendants de ce choix seront également effacés, de même que les listes.

Méthodologie :

Lorsqu'on fait un choix en C2:C6 dans une liste ou en effaçant, cela déclenche une procédure évènementielle de type Change, qui selon la cellule concernée lancera la composition de la liste affectée à la cellule suivante.

Les choix faits en C2:C6 sont répercutés sur la feuille Source par formule en G2:K2.

La zone G1:J2 est utilisée comme zone de critères pour les filtrages avancés destinés à composer les listes. Selon la liste, on utilisera 1 ou 2 ou 3 ou 4 colonnes de cette plage comme zone de critères.

La première liste est constituée par l'extraction de la première colonne de la base d'éléments uniques (sans critères à ce premier niveau). Cette liste est en M. Pour la 2e liste on procède à l'extraction d'éléments uniques des 2 premières colonnes (avec comme critère le choix précédent). L'extraction est en O:P, la liste en P2:P?.

Pour la 3e liste on extrait des éléments uniques des 3 premières colonnes (critères les 2 choix précédents, extraction en R:T, liste en T2:T?).

Pour la 4e, extraction d'éléments uniques des 4 premières colonnes (critères les 3 choix faits, extraction en V:Y et liste en Y2:Y?).

Enfin pour la 5e, extraction sur la base entière d'éléments uniques (critères les 4 choix réalisés, l'extraction est en AA:AE et la liste en AE2:AE?).

Tu devrais t'y retrouver assez facilement...

Cordialement.

28xdeca-1.xlsm (31.93 Ko)

Bonjour à tous

Et oui ! je suis un indécrottable distrait.

Une variante spécial MAC, c'est à dire sans dico.

Mais c'est tout de même plus simple avec !

Bye !

141-v2.xlsm (36.83 Ko)

Salut !

Une variante spécial MAC, c'est à dire sans dico.

Mais c'est tout de même plus simple avec !

Eh oui ! Je dois dire qu'à l'expérience des problèmes que ça pose, que l'on ne peut que tenter de surmonter en aveugle quand on ne travaille pas du tout sur Mac, je recule souvent à répondre dès que je détecte un Mac !

Je n'avais pas vu non plus... mais dans ce cas précis j'aurais sans doute continué à être tenté de m'y pencher, à cause des 5 niveaux pour essayer la façon de traiter que j'ai utilisé...

En tout cas notre ami sans caféine a lancé son sujet comme une bouteille à la mer sans s'en inquiéter plus mais soyons positif ! c'est qu'il nous fait confiance !

Disparition fortuite ou fuite ?

Bonjour MFERRAND

Disparition fortuite ou fuite ?

En tout cas, plus aucun signe de vie... Tant pis !

Bye !

Bonjour,

version MAC

Ceuzin

Rechercher des sujets similaires à "menu deroulant cascade conditions"