ListBox multisélection

Bonjour,

C'est la première fois que je post sur ce forum.

J’ai adapté une partie du code trouvé sur ce forum, dans le fichier ci-joint, je souhaiterai envoyer dans la cellule B2 les noms sélectionnés dans la ListBox de de la feuille, pour les multi sélections les noms devront être espacés d'un point-virgule.

Petit souci à l’ouverture du fichier au premier clic sur la ListBox ça bug.

Comment contourner ce problème.

Merci d’avance pour votre aide.

Bonjour,

Voir PJ

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Not Intersect([A2:A10], Target) Is Nothing And Target.Count = 1 Then
    Me.ListBox1.MultiSelect = fmMultiSelectMulti
    Me.ListBox1.List = Sheets("BD").Range("A2:A12").Value
    a = Split(Target, " ")
    If UBound(a) >= 0 Then
      For i = 0 To Me.ListBox1.ListCount - 1
        If Not IsError(Application.Match(Me.ListBox1.List(i), a, 0)) Then Me.ListBox1.Selected(i) = True
      Next i
    End If
    Me.ListBox1.Height = 150
    Me.ListBox1.Width = 100
    Me.ListBox1.Top = Target.Top
    Me.ListBox1.Left = Target.Left + Target.Width
    Me.ListBox1.Visible = True
  Else
      Me.ListBox1.Visible = False
  End If
End Sub

Private Sub ListBox1_Change()
 For i = 0 To Me.ListBox1.ListCount - 1
   If Me.ListBox1.Selected(i) = True Then temp = temp & Me.ListBox1.List(i) & " "
 Next i
 ActiveCell = Trim(temp)
End Sub

Ceuzin

Bonsoir Ceuzin,

Merci pour ta réponse qui correspond exactement au résultat que je souhaitai atteindre.

Bonjour Ceuzin

Si la BD contient 3 colonnes, le N° d’adhérent dans la première, le nom dans la seconde et l’adresse mail dans la troisième.

Comment trier la liste par la colonne nom et récupérer en A2 l’adresse mail.

Rechercher des sujets similaires à "listbox multiselection"