Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

listes déroulantes dynamiques

4 réponses
Avatar
Nathparquet
Bonjour,

comment créer une macro qui me permette de changer de liste déroulante dans
une cellule en fonction du choix effectué dans une autre liste déroulante?

Quelqu'un peut-il m'indiquer la démarche générale à suivre concernant une
telle macro? (nommer des plages de cellules, modifier les plages de cellules,
....?)

4 réponses

Avatar
FdeCourt
Salut,

Pas besoin de macro.
Imaginons que ton classeur ait deux feuilles :
- 1 nommée Liste
- 1 nommée referentiel

Dans la feuille Liste, il y a tes deux liste déroulante en cellule A2
et B2. En A2 tu as la liste déroulante maître qui conditionnera ce qui
apparaît en B2

Dans la feuille referentiel, tu as en colonne 1, commencent à la
deuxième ligne les éléments qui compose ta première liste
Il faut que dans les colonnes suivantes, tu ais :
- Sur la première ligne, le nom de la valeur de la colonne A (fait une
copie des valeurs de la colonne A que tu transposes sur la première
lignes des colonne suivante, pour que A2 soit égale à B1, A3 soit
égale à C1, etc....)
- Dans les lignes qui suivent, pour chaque valeur de la liste A, les
valeurs devant apparaître.
Ton tableau doit ressembler à ça :
A B C
A A2 B2 C2
B A3 B3 C3
C B4 C4
B5 C5

Ensuite tu insères deux noms, que j'ai appelé liste1 et liste2
Dans liste1 tu mets la formule : ÞCALER(referentiel!$A
$2;;;NBVAL(referentiel!$A:$A);)
Dans liste2 tu mets la formule : ÞCALER(referentiel!$A
$1;1;EQUIV(Listes!$A$2;referentiel!
$1:$1;0)-1;NBVAL(DECALER(referentiel!$A:$A;;EQUIV(Listes!$A
$2;referentiel!$1:$1;0);;);)-2)

Puis après avoir sélectionné la cellule A2, tu clique sur Donnée >
Validation > tu choisis liste, puis tu tapes =liste1
Et pour la cellule B2, tu fait la même validation avec =liste2

Et hop, le contenu de la liste2 dépend du contenu de la liste1

Cordialement,

F.
Avatar
FdeCourt
J'ai un peu regardé, et en changeant la formule et la structure, il
est possible de faire autant de niveau de liste hiérarchique que l'on
veut, et cela sans macro, et en étant completement flexible sur le
nombre d'item par liste.

http://cjoint.com/?kjtUpt3W8g

Dans le fichier joint il y a 4 listes hierarchiques (je me suis arrété
à 4 car après Choix du type (couleur ou continent), puis continent,
puis pays puis ville, je n'avais plus d'idée.... mais il est possible
de descendre à quartier, puis rue, puis numero d'immeuble, puis etage
puis appartement, puis pièce, puis.....)

Il faut juste respecter la structure des listes, et ajouter des noms,
en se basant simplement sur ceux déjà crées.

Cordialement,

F.
Avatar
Greg
Même sujet qu'à 11h25... Il faudrait que tu lises la charte d'Escelabo si tu
ne veux pas faire que profiter des compétences e de l'investissement des
gens qui se trouvent ici. Ils le méritent amplement!! Ils passent parfois
plus de temps à te trouver des solutions que toi-même à écrire tes
messages...
Avatar
LSteph
Bonjour Nath,

La première fois que j'ai débarqué sur un forum , j'en ai pris plein la
G, ce n'était pas celui-ci mais qu'importe, je l'aurais mauvaise de ne
pas me mettre à ta place et voudrais donc t'aider dans ta démarche
Il y a des exemples sur excelabo et sur ce forum, tu as évoqué que tu
n'arrivais pas à les faire fonctionner.Des réponses à l'appui t'ont été
fournies. Mais parcequ'elles ne te conviendraient pas tu crées ce
nouveau fil?
Ce n'est pas ce qu'attendent ceux qui t'ont répondu et sont prêts à t'aider.
Mieux serait de leur donner retour et des précisions sur ce qui te
poserait pb et surtout la démarche entreprise pour y parvenir...
La structure des données peut aussi ne pas être optimale, qu'importe,
donner les précisions demandées par tes interlocuteurs peut aider!
Tu peux lire aussi sur excelabo, quelques règles d'usage elles ne sont
pas très nombreuses rassures toi .

Si tu prends soin de donner retour à chacun, je serais bien surpris que
les nouvelles réponses ne concourent pas à ta solution.

@bientôt donc..

--
lSteph

Nathparquet a écrit :
Bonjour,

comment créer une macro qui me permette de changer de liste déroulante dans
une cellule en fonction du choix effectué dans une autre liste déroulante?

Quelqu'un peut-il m'indiquer la démarche générale à suivre concernant une
telle macro? (nommer des plages de cellules, modifier les plages de cellules,
....?)