Menu déroulants en cascades sur plusieurs lignes

Bonjour à tous,
Sur la page TEST j'ai un menu en cascade qui fonctionne bien en (jaune) C3 et D3.
Ce menu déroulant vient de la page Menu (ou se trouve mes listes).
J'ai une formule qui se trouve sur la page Menu en A1 et qui me permet de repique la liste sur la page TEST (avec une plage nommée et une validation de donnée)

Cela fonctionne très bien mais seulement sur 1 ligne sauf quand je souhaite étendre vers le bas.
Alors c'est logique que cela ne fonctionne pas vu qu'il va repiquer une liste qui ne se remet pas a jour mais je ne sais pas trop comment je pourrais faire la suite.

Ma question est: comment puis je afficher mes listes sur la Page Test ligne par ligne ?

Merci beaucoup pour votre aide.
Je vous joint le fichier (j'utilise google sheet dernière version).

Voici le lien du fichier

https://docs.google.com/spreadsheets/d/1qzvc1XYaGZwKHVMxJRGcMk_Vzb5y5dlhnPkLtb12Mlc/edit?

Bonsoir,

Le lien est protégé, impossible d'accéder au fichier...

🤔

Bonjour, Voila normalement j'ai libéré la limite c'est disponible

Bonjour,

Voici une solution :

https://docs.google.com/spreadsheets/d/1Mlp8gMTFpSMgOCDmEHtD_-nMkHE_oc9GwXwefOdvBsU/edit?usp=sharing

Onglet "Menu" en F2 :

=byrow(Test!C3:C26;lambda(n;query(transpose(query(A:E));"select * where Col1 = '"&n&"' ")))

Listes déroulantes conditionnelles :

Onglet "Test" en D3 à copier vers le bas, attention à bien supprimer les "$" avant le 3 :

=menu!$G2:$Z2

Listes déroulantes classiques :

=menu!$A$1:$E$1

Cordialement,

Fil.

Hello j'ai compris la première partie avec les dollars mais après je patauge un peu...

J'ai vu que tu as mis une formule en F2 mais je comprends pas a quoi sert la liste en colonnes G G H I J K...
A quoi sert la liste ? car en colonne BCDE dans le futur je vais avoir une grande liste.

J'essaye déjà de comprendre la formule... elle est un peu complexe pour moi je vais aller voir chaque élément

J'ai été voir une vidéo sur
- Lambda : j'ai compris le principe sur (sert a créer ses propre formule)
- Byrow : je trouve tres peu de vidéos pour google sheet mais je compris que c'est pour un tableau...

- Query : pas facile cette fonction pour un débutant.
- Transpose : je dois encore aller voir la video

Après mes recherches et visionnages de vidéo, J'ai compris ta formule, tu utilises cette formule pour pouvoir afficher chaque lignes en cascades j'ai compris pourquoi cela se réplique en colonnes G G H I J K

image

Bon voila je viens de comprendre le principe de ta formule elle est top
elle va transposer linéairement tout mes listes du premier tableau et faire la cascade sur ma première page.

Je viens donc de comprendre la formule, est elle jouable sur de longue liste en BCDE ?
Car oui elle fonctionne bien sur une petite liste.

image

Si ton tableau est amené à évoluer en taille :

En C3 "Test" (Listes déroulantes à copier vers le bas ajouter des colonnes suffisantes et modifier la borne supérieure (CD2 voire plus...)) :

=menu!$G2:$CD2

En "menu" F2 (limite à la plage remplie de la colonne B de l'onglet "Test") :

=byrow(query(Test!B3:B;"select * where B is not null");lambda(n;query(transpose(query(A:E));"select * where Col1 = '"&n&"' ")))

Quand il y a plus de colonne et plus dans la liste... sur la page teste dans le menu déroulant il fait un meli-mélo... il mélange les listes entre elles ...
Peut être pcq j'ai ajouter des colonnes par la suite ? Sinon ça fonctionne très bien sur de petites listes.

Sur mon nouveau doc quand je change de liste dans la page TEST il garde l'ancienne liste et la mélange avec la nouvelle sélectionnée (au niveau du menu déroulant) ... et parfois il mélange les 2 listes (pas alphabétiquement...) en fait il ne fait pas de refresh instantané.

J'ai pourtant bien demandé dans les préférences

image

Ben, c'est normal en G2 de copiemenu, tu n'as pas changé le nom de l'onglet !

Il faut mettre copieTest!B3:B à la place de Test!B3:B

Du coup, il cherchait dans la mauvaise feuille...

Demain, je regarde pour faire une version plus pratique, si tu dois ajouter des colonnes...👍

https://docs.google.com/spreadsheets/d/1672BlHKx3CXAzFAbuKwd61UX0JUQ-gw2eDuR9h1SvxM/edit?usp=sharing

Tu peux rajouter des listes d'ingrédients dans l'onglet "menu" et les listes déroulantes "choix" se mettront automatiquement à jour.

Les liste déroulantes "Ingrédients" se mettront également automatiquement à jour dans l'onglet "Listes déroulantes" via la formule :

=byrow(query(Test!B3:B;"select * where B is not null");lambda(n;query(transpose(query(menu!A1:BH));"select * where  Col1 is not null and Col1 = '"&n&"' ")))

Vu le nombre de listes déroulantes, il y a un temps de latence quand les fonctions BYROW + LAMDA recalculent toutes les listes déroulantes.

Il faut donc attendre que la barre bleue en haut à droite disparaisse pour que ce soit opérationnel !

Si tu veux plus de réactivité, remplace :

=byrow(query(Test!B3:B;"select * where B is not null");lambda(n;query(transpose(query(menu!A1:BH));"select * where  Col1 is not null and Col1 = '"&n&"' ")))

Par (et recopie vers le bas suffisamment loin) :

=SIERREUR(query(transpose(query(menu!$A$1:$BH));"select * where Col1 is not null and Col1 = '"&Test!$B3&"' ");"")

Bon dimanche,

Fil.


Bonjour,

N'oublie pas de clôturer tes posts, si tu es satisfait des réponses apportées !


Merci,

Bonne soirée,

Fil.


Rechercher des sujets similaires à "menu deroulants cascades lignes"