récupération de sélection multiple dans une liste

roadbuster

XLDnaute Nouveau
Bonjour,

Je souhaite récupérer la liste des item cochés dans une zone de liste en mode sélection multiple.
Le but est de prendre une décision en fonction de ce qui est coché donc mettre ces item dans un tableau me conviendrait tout à fait.
J'ai adapté un bout de code qui me semblait simple (car j'ai trouvé des trucs au dessus de mon niveau de compétences..) simple que j'ai récupéré en fouillant les forums.
..mais ça ne marche tjrs pas..

Si qqun peut me donner un coup de main..

Merci !
 

Pièces jointes

  • test liste.xls
    22 KB · Affichages: 156
  • test liste.xls
    22 KB · Affichages: 162
  • test liste.xls
    22 KB · Affichages: 163

JNP

XLDnaute Barbatruc
Re : récupération de sélection multiple dans une liste

Bonjour RoadBuster et bienvenue, salut Banzai64 :),
Ton fichier en retour. Au niveau des contrôles, je suis passé par de l'ActiveX et non du formulaire, c'est plus souple ;).
L'événement est sur le double click (plus logique pour pouvoir faire des sélections :p).
Bon courage :cool:
 

Pièces jointes

  • test liste(1).xls
    39 KB · Affichages: 222

roadbuster

XLDnaute Nouveau
Re : récupération de sélection multiple dans une liste

Bonjour JNP,

Merci beaucoup pour cette réponse.
Encore deux petites questions sûrement très simples mais comme je débute.... je rame :mad:
1- Comment alimente-t-on une boite ActiveX ?
2- Comment dois-je procéder pour récuperer les données dans un tableau Excel ?

Merci par avance
 

JNP

XLDnaute Barbatruc
Re : récupération de sélection multiple dans une liste

Re :),
1- Comment alimente-t-on une boite ActiveX ?
2- Comment dois-je procéder pour récuperer les données dans un tableau Excel ?
1- Clic droit sur la boîte -> Propriétés et mettre la source dans ListFillRange ;).
2- Euh, vaste question :p... Le code est dans celui de la feuille. Tu peux le déclencher sur plein d'évènement (je te l'avais mis en double clic). A la place de mon code, tu peux mettre par exemple
Code:
Private Sub ListBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Dim I As Integer, J As Integer
J = 1
Range("A1:A6").Clear
With ListBox1
For I = 0 To .ListCount - 1
If .Selected(I) = True Then
Cells(J, 1) = .List(I)
J = J + 1
End If
Next I
End With
End Sub
Qui remplira les cellules A1 à A6 en fonction des lignes choisies.
Bon courage :cool:
 

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 299
Membres
103 172
dernier inscrit
Aurelyan