Je ne sais pas si ça vaut le coup si ça ne fait que sembler marcher. Attends plutôt une solution qui fonctionne !
Cependant ......
Le principe, c'est que nativement, si tu écris un mot différent de ta liste, Excel t'envoie un message.
Par contre, si tu laisses un blanc (cas d'une liste ou un élément a disparu de la plage de ta liste) , tu peux écrire n'importe quoi, Excel ne râle pas. Donc ta liste ne doit comporter que les noms restants.ce qui se fait avec decaler(la cellule de départ;nb de lignes; nb de colonne; hauteur de ta plage;largeur de ta plage.
decaler(a1;0;0) ==>a1
decaler(a1;1;0) ==>a2
decaler(a1;0;1) ==>b1
decaler(a1;0;0;5;1) ==>plage a1:a5
decaler(a1;0;0;1;5) ==>plage a1:e1
decaler(a1;0;0;2;5) ==>plage a1:e2
mais tous les nb peuvent être obtenus par des résultat de fonction.
Ce qui te permet de créer des plages dynamiques. Pour des listes en casade par exemple
Crdlmt