2 listes déroulantes dont la deuxième est conditionnelle selon la 1ère

Bonjour, pour mon activité (coaching) je souhaiterai mettre en place une liste déroulante avec une catégorie de mouvement et une seconde qui regroupe tout les exercices issus d'une base de donnée.

J'aimerai prendre par exemple catégorie (première liste ) : haut du corps ; exercices (deuxième liste): tout les exercices haut du corps

J'ai essayé plusieurs formules et regardé un peu par tout je n'y arrive pas quelque chose doit m'échapper…

Merci de votre aide si vous avez une solution.

https://docs.google.com/spreadsheets/d/12I-R_IR9dy8Df5TIaKuDdKlbhskFrZ3dJ1nRa3dSynA/edit?usp=sharing

https://docs.google.com/spreadsheets/d/1qnka4a0b2Q2Lutt2lfKxXbPs9F22ajKN6WTyMK_7YQ0/edit?usp=sharing

Bonjour,

Il y a de nombreuses façons de le faire, via des formules ou un script. Mais je n'ai pas compris la structuration de tes données. Si tu peux mettre catégories et exercices comme ceci, ce serait déjà plus clair

image

D'accord merci de votre réponse, cependant je voudrais mettre les 2 listes quasiment cote à cote comme démontré dans la feuille afin de pouvoir le faire pour chaque exercice.

Dans A9, j'ai ma liste déroulante et dans FL9 et j'ai ma liste d'exercice.

Par quelle formules ?

merci de votre réponse.

https://docs.google.com/spreadsheets/d/1qnka4a0b2Q2Lutt2lfKxXbPs9F22ajKN6WTyMK_7YQ0/edit?usp=sharing

je suis complètement perdu ! je n'ai pas trouvé FL9, et dans A9, la validation de données se fait sur une plage inconnue

image

De ce que j'ai pu comprendre ... voici une proposition

les données de base sont ici

image

et les choix sont faits ici en colonne A, puis en colonne F selon les choix faits en A

il y a une formule en AA1

=arrayformula(iferror(vlookup(A:A,transpose( Database_proposition!A:K ),sequence(1,rows(Database_proposition!A:K)-1,2,1),0)))
image

Bonjour, merci de votre retour, je vais essayer de me mieux m'expliquer :

Dans la fiche entrainement, en A9, j'ai une liste déroulante avec tout mes patterns de mouvement issus de la database_proposition située dans la colonne A.

De cette liste, j'aimerais que en FL9 , j'ai ma liste d'exercice découlant de ce que j'aurais choisi en A9

Par exemple je choisis Squat en A9, du coup en FL9 j'ai tout mes exercices issus de ma base de donnée concernant la catégorie squat.

Tout cela bien entendu en une liste déroulante comme dans la fiche entrainement.

Tout cela pour mes 12 exercices.

Je pense que c'est plus clair expliqué comme cela.

Merci et bonne journée.

https://docs.google.com/spreadsheets/d/1qnka4a0b2Q2Lutt2lfKxXbPs9F22ajKN6WTyMK_7YQ0/edit?usp=sharing

Il n'y a (toujours) pas de FL9.

Où se trouve la liste d'exercices découlant de ce que j'aurais choisi en A9 ? dans ma proposition initiale elle était sous chaque pattern de mouvement. Il faut bien qu'il y ait un lien quelque part entre patterns et exercices.

Qu'entendez-vous par Il n'y a (toujours) pas de FL9 ?
Concernant la liste d'exercice je l'ai modifié pour vous montrer qu'il s'agissait d'un lien entre le pattern de mouvement et les exercices concernant ces patterns.
Mes excuses, je suis un peu perdu vis à vis du problème

De cette liste, j'aimerais que en FL9 , j'ai ma liste d'exercice découlant de ce que j'aurais choisi en A9

Par exemple je choisis Squat en A9, du coup en FL9 j'ai tout mes exercices issus de ma base de donnée concernant la catégorie squat

je ne vois pas de cellules FL9 dans le fichier

et je ne comprends pas où sont les liens entre pattern et exercices

fl9

Il s'agit de F9:L10 effectivement.

Cependant, je ne comprends pas le "je ne comprends pas où sont les liens entre pattern et exercices".

Je souhaiterai choisir un pattern de mouvement en A9 et la dans la liste déroulante F9:L10 en découle la liste d'exercice de ma base de donnée concernant le pattern de mouvement choisi.

ah ok pour F9:L10 !

ce que je propose ... mettre en BA1

=arrayformula(iferror(vlookup(A:A,transpose( Database_proposition!A:K ),sequence(1,rows(Database_proposition!A:K)-1,2,1),0)))                

et comme validation des données pour F9 ...

=$BA9:9

à recopier en dessous

Non, ça ne marche pas, le pattern ne me renvoi pas à la liste d'exercices du pattern choisi.

C'est possible de mettre mes exercices de chaque pattern dans une plage nommée et quand lorsque je choisi mon pattern, cela choisi ma liste d'exercice grâce à une plage nommée ?

C'est possible de mettre mes exercices de chaque pattern dans une plage nommée et quand lorsque je choisi mon pattern, cela choisi ma liste d'exercice grâce à une plage nommée ?

non, tu peux toujours nommer les listes, mais tu ne peux pas mettre indirect dans la formule de validation

Non, ça ne marche pas, le pattern ne me renvoi pas à la liste d'exercices du pattern choisi.

je suis là pour t'aider et j'aimerais comprendre ... par exemple

image

en A13 j'ai mis "Hor_pull", en F13 "Rowing buste penché, un pas en arrière" fait bien partie des exercices de "Hor_pull" (voir colonne C de Database_proposition) ou bien y a t'il une erreur/un décalage dans la formule en jaune en AB1 ?

Effectivement c'est valable pour A13 - F13 mais uniquement pour Hor_Pull, si je mets Pectoraux ça reste sur les exercices hor_pull, ça ne me retranscrit pas les exercices pectoraux de la base de donnée

Si si, cela réactualise la lise de validation et ton choix précédent est indiqué comme erroné par un coin rouge en haut à droite de la cellule.

Pour éviter cela, il faut un script

function onEdit(event){
  var feuille = event.source.getActiveSheet();
  var cellule = event.source.getActiveRange();
  if (feuille.getName()=='Entrainement' && cellule.getColumn()==1){
    cellule.offset(0,5).clearContent()
  }
}

la cellule sera alors effacée et tu pourras choisir un exercice dans la liste qui a déjà été réactualisée.

D'accord, du coup comment je fais pour rentrer le script ?

Je l'ai mis dans le fichier de test que tu avais partagé.

Sur un autre fichier, tu fais Outils > Editeur de script et tu recopies le code à la place de ce qui est proposé, tu enregistres ensuite.

Effectivement cela marche mais seulement pour Pectoraux, Hor_pull, Vert_Pull et pour les autres une case blanche sans liste déroulante

Cela ne dépend que de ta structure de données. Par exemple, "Glutes_Hamstring" n'existe pas en ligne 1 de "Database_proposition" et donc n'a pas dans la même colonne tous les exercices. On revient à la structure proposée qui est

image

conclusion : liste tes patterns en ligne 1 et en dessous tous les exercices.

impeccable, j'ai réussi merci beaucoup.

Dernière faveur qui me vient à l'esprit, est-il possible dans la liste d'exercice qui découle de mettre certains mots en gras ? (il s'agit de sous catégorie)

Par exemple je choisi squat et ------ Foundational Squats ------ est en gras

Merci

Rechercher des sujets similaires à "listes deroulantes deuxieme conditionnelle 1ere"