Effacer cellule vide dans une liste déroulante [Fermé]

Signaler
-
Messages postés
17302
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
9 avril 2021
-
Bonjour,

J'ai vu plusieurs conversation à ce sujet, mais je n'arrive pas à trouver exactement ce que je désire.

J'aimerais faire une liste déroulante à partir d'une plage de cellules en excluant les cellules vides. Les cases remplies ne sont cependant pas consécutives.

Comme le fichier sera utilisé par des personnes ayant des connaissances limitées sur Excel, je ne veux pas avoir à faire de tri sur ma plage ou à utiliser des cellules supplémentaires masquées. Les modifications éventuelles à la plage de donnée doivent s'ajouter automatiquement à la liste déroulante.

En vous remerciant à l'avance pour votre aide!


3 réponses

Messages postés
12
Date d'inscription
jeudi 20 décembre 2012
Statut
Membre
Dernière intervention
21 décembre 2012
1
bonjour,
au lieu de choisir des cellule pour votre liste déroulante choisissez directement la lettre en haut ou taper cette formule dans fait reference à:

=Feuil1!$F:$F
Messages postés
53600
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
11 avril 2021
15 648
Cela ne résout absolument pas son problème ... Il ne veut pas les cellules vides !
Messages postés
25953
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
10 avril 2021
5 866
Bonjour

est ce quelque chose comme ça que vous cherchez:

https://www.cjoint.com/?BLvimWLvkOz

crdlmnt
Messages postés
17302
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
9 avril 2021
4 547
Salut,

Il faut mettre en oeuvre une colonne supplémentaire pour créer une liste sans cellule vide.
exemple tes données TEXTE sont en colonne A de A2 à A50
cette formule matricielle à coller en B2 par exemple qu'il faudra incrémenter vers le bas jusqu'à la ligne 50
Avant d'incrémenter il convient de déclarer la matricielle
1/ coller la formule
2/si la formule est active, sinon clic sur la cellule contenant la formule et clic sur la formule dans la barre des formules ou encore double clic sur la cellule contenant la formule
3/en même temps clic sur les 3 touches du clavier Ctrl, Shift (touche majuscule) et Entrée
si tu fais bien la formule se placera entre {} comme ceci {=ta formule}

=SI(LIGNES($2:2)<=NBVAL($A$2:$A$50);INDEX(($A$2:$A$50;EQUIV(LIGNES($2:2);NB.SI(($A$2:$A$50;"<="& ($A$2:$A$50);0));"")
mais il serait plus judicieux de nommer la plage A2:A50 exemple la nommer List la formule se simplifie à

=SI(LIGNES($2:2)<=NBVAL(List);INDEX(List;EQUIV(LIGNES($2:2);NB.SI(List;"<="&List);0));"")
une fois la matricielle déclarée elle donnera
{=SI(LIGNES($2:2)<=NBVAL(List);INDEX(List;EQUIV(LIGNES($2:2);NB.SI(List;"<="&List);0));"")}

Pour terminer créer la liste de validation avec cette formule

=DECALER($B$2;;;SOMME(N($B$2:$B$50<>"")))
si ta plage contient des valeurs numériques il faudra changer la formule


A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.