Bonjour à tous,
J'ai ce code VBA qui me permet une multi sélection sur liste de validation.
Je sépare les choix par un retour chariot Chr(10)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("A1:A3"), Target) Is Nothing And Target.Cells(1).Count = 1 Then
Me.ListBox1.MultiSelect = fmMultiSelectMulti
Me.ListBox1.List = Worksheets(2).Range("A1:A10").Value
A = Split(Target.Cells(1), Chr(10))
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 = 200
Me.ListBox1.Width = 150
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
Je voudrais cependant que sur la dernière valeur, il n'y ai pas ce retour chariot (donc que la cellule ne se termine pas par un retour chariot).
J'ai introduit un check de la dernière valeur de activecell en fin de procédure. Si c'est Chr(10) alors il le supprime mais je me demandais s'il y avait une façon de le faire après chaque sélection dans la listbox ?
En vous remerciant par avance pour la réponse.