Bonjour
Plusieurs choses :
1) tu ne précises pas si cette listbox est sur une feuille de calcul ou sur un userform.
Or, il se trouve que l'évènement click d'une listbox multiselect réagit (ou non) différemment dans un cas et dans l'autre !
2) ton code fonctionnerait sur un userform et une listbox non multiselect mais regarde-le donc : -->>
A moins que le dernier article parcouru par ta boucle soit sélectionné, ta clause else cachera in fine ton commandbutton
En outre : le "dernier qui a parlé" (le dernier sélectionné) aura raison par rapport à tous les autres !
Il y a là très manifestement une carence de logique (informatique ou non).
3) on peut s'interroger sur le caractère adroit de tout reparcourir en boucle à chaque clic.
EDIT : pour résumer : tu ferais sans doute bien de nous préciser :
- sur quoi (feuille de calcul ou userform) est placée cette listbox
- si elle est vraiment
multiselect et, dans ce cas, ce que tu souhaites faire exactement
ou si, finalement, elle n'est pas multiselect.