Liste déroulante conditionnelle via liste déroulante [Fermé]

Signaler
-
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
-
Bonjour,

en A7 : j'ai une liste déroulante nommé "compétence" (qui se situe en feuille 2) qui va de 1 à 8; en C6 je souhaiterai avoir une liste déroulante en fonction du chiffre qui justement ne dépasse pas le chiffre en question, du coup j'ai crée des liste que j'ai renommé "un"-"deux"-"trois"- etc ... (qui se situe en feuille 2)
Du coup j'ai ouvert la validation de donnée, mis en liste et j'ai pensée à cette formule mais elle ne fonctionne pas quelqu'un a une soluce ?
=si(A7=1;=un;si(A7=2;=deux;si(A7=3;=trois;si(A7=4;=quatre;si(A7=5;=cinq;si(A7=6;=six;si(A7=7;=sept;si(A7=8;=huit;0))))))))

2 réponses

Messages postés
8170
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
13 août 2020
1 446
Oui Merci pour l'exemple ça ma bien aidé.
Par contre le problème est que ce ne sont que des chiffres de 1 à 8 et cela ne fonctionne pas avec visiblement.
Du coup j'ai remplacer par _1_ / _2_ / _3_ ETC ...
Du coup mes cases F37 et F41 et H37 et H41 ne peuvent plus s’additionner.
Voici le doc
http://www.cjoint.com/c/FJyw5qGbacz
Messages postés
52050
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
4 août 2020
13 839 > Le Benou
Bonjour.

Tu n'as pas correctement utilisé les instructions de Patrice33740, notamment pour INDIRECT(...).
Comme tu as besoin de valeurs numériques en A, D et G, pour le nom défini "Compétence" remplace la plage B1:I1 de [Liste] par la plage A2:A9, cellules dans lesquelles tu auras saisi 1,2,3...8.

Dans les cellules C6:C10 tu dois remplacer la source de la validation des données
=INDIRECT(SUBSTITUE($A$7;"";"")) par
=INDIRECT("_"&$A$7&"_")
De cette façon, quand tu sélectionnes le chiffre 3 en A7, c'est la source _3_ qui est appelée. Pareil pour les autres zones ...
Ok, c'est la première fois que j'utilise cette fonction et je ne l'est pas totalement comprise (se qui doit me bloquer dans le raisonnement) mais avec un peu de pratique cela devrait le faire. Merci pour la réponse.
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
477
Bonjour à tous,

Tu peux utiliser une autre astuce.
La plage 1 correspond à la cellule A2 augmentée de +1 en hauteur,
La plage 2 correspond à la cellule A2 augmentée de +2 en hauteur,
La plage 3 correspond à la cellule A2 augmentée de +3 en hauteur,
etc.
Tu disposes donc d'une relation directe entre le numéro de plage et le dimensionnement à appliquer.
Exemple pour la validation des cellules C6 à C10, cela qui se traduit par la formule =DECALER(Liste!$A$2;;;$A$7+1)

Dans le classeur joint, je n'ai renseigné que la colonne C.
https://www.cjoint.com/c/FJzg2kfac6l

A+
Merci Gyrus pour cette solution je n'y avait pas penser.
Voici ce que j'avais en tête au moment de la lecture de ta réponse :
https://www.youtube.com/watch?v=hc5OSV_y7T8
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
477 > Le Benou
ptdr !
appelle moi Gump ... Bubble Gump.

A+