Choix multiple listbox et transfert choix

soumus

XLDnaute Nouveau
Bonjour à Tous,

Voilà j'ai un probleme avec ma Listbox.Je dispose d'un Userform avec 2 listbox : une listbox2 d'où je selectionne les données que je souhaite afficher et une autre listbox1 qui affiche les données sélectionnées.

Mon probleme est: Quand je clique sur l'option "selection de plusieurs paramétres" ou sur l'option "selection étendue" et que je sélectionne plusieurs éléments j'arrive pas ni à faire apparaitre les élements selectionnés dans ma listbox1, ni à les transférer dans listbox1.Ci-joint le fichier.


Votre aide SOS
 

Pièces jointes

  • PRODUCTION_1ER_SEMESTRE_2010.XLS
    428.5 KB · Affichages: 124
  • PRODUCTION_1ER_SEMESTRE_2010.XLS
    428.5 KB · Affichages: 115
  • PRODUCTION_1ER_SEMESTRE_2010.XLS
    428.5 KB · Affichages: 94

Dranreb

XLDnaute Barbatruc
Re : Choix multiple listbox et transfert choix

Bonjour.
Une premier élément de réponse se trouve dans la remarque en fin de l'aide sur la propriété MultiSelect:
Remarques
Lorsque la propriété MultiSelect est définie pour des valeurs de type Extended ou Simple, vous devez utiliser la propriété Selected de la zone de liste pour déterminer les éléments sélectionnés. La propriété Value du contrôle est toujours Null.
La propriété ListIndex renvoie l'index de la ligne ayant le focus.
Encore qu'il y a probablement une coquille de traduction: c'est sans doute Multi et non Simple.
Voyez déjà si ceci suffit à vous faire progresser.
À +
 

Dranreb

XLDnaute Barbatruc
Re : Choix multiple listbox et transfert choix

Je ne sais pas moi, votre procédure pourrait commencer comme ça:
VB:
Private Sub ListBox2_Click()
Dim L As Long
If ListBox2.MultiSelect <> fmMultiSelectSingle Then
   For L = 0 To ListBox2.ListCount - 1
      If ListBox2.Selected(L) Then FiltreListbox ListBox2.List(L), Col
      Next L
Else
   FiltreListbox ListBox2.List(ListBox2.ListIndex), Col
   End If
Mais après ça devient compliqué derrière parce que votre FiltreListbox ne devrait plus systématiquement nettoyer la ListBox1 avant remplissage.

P.S. Tant qu'à avoir une usine à gaz, j'ai de plus en plus l'impression que vous pourriez tirer grand avantage de mes dictionnaires arborescents maintes fois proposés sur ce forum. C'est votre Module2 qui m'a décidé à vous le dire. Mais vous n'auriez plus non plus de classement à effectuer dans FiltreListbox: mes dictionnaires arborescents sont très facile à constituer et rendent comme item des tables de numéros de lignes correspondant à une chaine de sous clés imbriquées. Les modules sont des modules de services qui n'ont pas à être adaptés.
À +
 
Dernière édition:

Discussions similaires

G
Réponses
6
Affichages
2 K
Guillaume
G

Statistiques des forums

Discussions
297 997
Messages
1 964 982
Membres
200 792
dernier inscrit
Jdoul