Liste déroulante à choix multiple
Bonjour,
Je voudrais créer une liste déroulante à choix multiples dont les choix seront inscrits dans la cellule, séparés par une virgule.
Le problème est l'affichage de la liste qui n'apparait pas.
Faut-il que je crée une userform séparée?
Vous trouverez ci-joint le code que j'ai adapté d'un code que j'ai trouvé et qui correspondait à ce que je cherchais.
la liste "Ville" correspond à la liste en feuille 'listes", plage B2 à B31
Il faudrait que la liste de choix s'affiche dans chaque ligne de B9 à B100 de la feuille 'Experience feedback'.
Je voudrais ensuite créer en colonne "C", en fonction des choix, les adresses emails qui correspondront. les adresses seront aussi listées dans la feuille 'liste". Je n'ai aucune idée de la façon de procéder.
Je vous remercie par avance pour votre aide.
Stephane
Bonsoir,
http://boisgontierjacques.free.fr/fichiers/DonneesValidation/DVChoixMultListBox.xls
http://boisgontierjacques.free.fr/fichiers/DonneesValidation/DVChoixSuccessifs.xls
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([B9:B100], Target) Is Nothing Then
Me.ListBox1.MultiSelect = fmMultiSelectMulti
Me.ListBox1.List = Sheets("listes").Range("ville").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 = 300
Me.ListBox1.Width = 130
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
If Len(temp) > 0 Then temp = Left(temp, Len(temp) - 1)
ActiveCell = Trim(temp)
End SubCeuzin
Bonjour,
Je vous remercie pour votre réponse qui correspond parfaiatement et dont le code est très clair.
Bonne journée
bonjour,
j'aurais encore besoin de vos lumières pour une dernière question.
Je souhaiterais en fonction de la sélection multiple, que je renvoie toutes les adresses emails séparées par une virgule dans la colonne "C" de la feuille "experience feedback", sur la même ligne que la sélection. Les adresses emails sont listés par colonne dans la feuille "Listes" dont les titres de chaque colonne correpsondent à la liste de la listbox.
par exemple en ligne B12, j'ai selectionné, "1.100 Sietas" et 1.600 Hanjin", je voudrais qu'en C12, s'affiche les adresses emails des colonnes "D" et "E" de la feuille "Listes".
Merci d'avance pour votre aide.
Stephane.