Comment étendre une liste conditionnelle sous excel

Fermé
Q999 - 8 juin 2015 à 09:31
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 8 juin 2015 à 10:04
Bonjour,

J'ai une question que j'imagine peu commune... Sur un tableau de 150 lignes, toutes les cellules de la colonne B sont contraintes via une liste (validation de données...) qui me permet de choisir entre "Menuiserie intérieure" et "Menuiserie extérieure". Ensuite, toutes les cellules de la colonne C sont également contraintes soit par une liste L1 (correspondant à Menuiserie intérieure) soit par une liste L2 (correspondant à Menuiserie extérieure).

Exemple : si B48 = "Menuiserie extérieure" alors C48 doit permettre de choisir les valeurs de la liste L2.

Jusque là, je suis arrivé à le faire grâce à la fonction INDIRECT() :
=INDIRECT(SUBSTITUE(B48;" ";"_"))

Le problème, c'est que je dois taper la formule permettant de faire apparaitre la bonne liste (validation de données) dans toutes les cellules de la colonne C. En gros, je dois changer B48 en B49 puis B50 puis ... et c'est long.

Du coup, je me demandais si vous aviez une solution qui m'éviterais de le faire à la main !

Merci beaucoup d'avance !
A voir également:

1 réponse

via55 Messages postés 14494 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 26 octobre 2024 2 734
8 juin 2015 à 09:52
Bonjour

Tu n'es pas obligé de recopier la formule
dans ta première cellule dans Source de Validation de données tu tapes bien la formule =INDIRECT(SUBSTITUE(B48;" ";"_")) en veillant qu'il n'y ait pas de signes $ pour ne pas figer la formule et tu fermes la validation de données
Ensuite tu étires la cellule B48 vers le bas comme pour une formule

Cdlmnt
Via
1
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 412
8 juin 2015 à 10:04
Bonjour (salut Via)...
ou alors on sélectionne le champ complet et on entre la validation correspondant à la première cellule (toujours sans les $ bien sur)
pour sélectionner rapidement un champ important, placer le curseur dans la case adresse à gauche de la ligne des entêtes de colonnes, inscrire l'adresse (par ex B2:B500) ou le nom du champ s'il est nommé, et touche enter.

crdlmnt
0