Boucle de selection d'items dans Listbox

reubeucope

XLDnaute Nouveau
Bonjour à tous,

J'ai un petit soucis avec une listbox à sélection multiple.

Je voudrais créer une boucle qui sélectionnerait tous les items qui suivent celui que l'utilisateur sélectionne.

Quand je lance le Userform et que je sélectionne un item, Excel plante.
Par contre, si je supprime la boucle et la remplace par la sélection d'un seul item ( le suivant par exemple), ça marche nickel.

Who can help me?

Merci d'avance.
 

Hellboy

XLDnaute Accro
Bonjour reubeucope

Il est difficile de donner un diagnostique sans voir le problème sur le terrain. Joint ton fichier en respectant les normes et ont pourra mieux voir.

Mais une idée me viens en attendant, si ta macro eset dans liststBox_Change tu risque avoir des problèmes. Utilise un autre évènement.

Reste a voir !
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonsoir Reubeucop, bonsoir le forum,

Reubeucop il faut absolument que tu lises ÇA et certainement tu comprendras mieux pourquoi tu n'as pas eu de réponses. Il est inutile de multiplier les fils en modifiant le sujet. Par contre un fichier exemple avec ton UserForm déjà fait éviterait à tous ceux qui sont prêts à t'aider de galérer à tout recréer. Si ton fichier zippé dépasse les 50 Ko, Recrés-en un adapté à l'original avec uniquement les données qui concernent ton problème. Le nom du fichier zippé ne doit pas contenir d'espaces, d'accent ni de caractères spéciaux. Allez ! Fais un effort et tu verras que tu auras une répnse très très vite...


Édition

Bonsoir Hellboy, on s'est croisés...

Message édité par: Robert, à: 11/07/2005 19:58
 

ThomasR

XLDnaute Occasionnel
Bonjour HEllboy, Robert, reubeucope.

Je n'ai pas trop compris la question, mais comme je suis aussi un debutant je pense que le problème rencontré est le même que celui que j'ai rencontré la 1er fois que j'ai fait du multiligne en listbox.

la valeur ne peut être renvoyer sans boucle.

car il faut identifier les champs selectionné des autres champs.

pour cela il faut utiliser une boucle du genre

Code:
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
MsgBox ListBox1.List(i)
End If
Next i

comme on peut le constater dans cette exemple l'index de la liste box commence à 0 d'ou le .count-1

l'index est super important car quand on debut il est deja difficile de composer un code correct mais si l'index est faut il n'est pas évident de comprendre pourquoi ca plante (si je dis ca c'est que l'index ne comence pas toujours à 0 selon les objets).

je ne sais pas si cela etait ta question mais au pire cela pourra toujours servir à qqu'un qui lira le poste. [file name=Listbox_multiligne.zip size=7855]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Listbox_multiligne.zip[/file]
 

Pièces jointes

  • Listbox_multiligne.zip
    7.7 KB · Affichages: 74

Discussions similaires

Statistiques des forums

Discussions
312 519
Messages
2 089 244
Membres
104 076
dernier inscrit
Jérèmalo