Const sep$ = " ; "
Private Sub ComboBox1_Change()
Dim i&, x$, j&
i = ComboBox1.ListIndex + 1
If i = 0 Then ComboBox1 = "": ComboBox1.DropDown: Exit Sub
x = sep & [Tableau1].Cells(i, 17) & sep
With ListBox1
For j = 0 To ListBox1.ListCount - 1
.Selected(j) = False 'RAZ
If InStr(x, sep & .List(j, 0) & sep) Then .Selected(j) = True
Next
End With
End Sub
Private Sub CommandButton1_Click()
Dim i&, j&, x$
i = ComboBox1.ListIndex + 1
If i = 0 Then Exit Sub
With ListBox1
For j = 0 To ListBox1.ListCount - 1
If .Selected(j) Then x = x & sep & .List(j, 0)
Next
End With
[Tableau1].Cells(i, 17) = Mid(x, Len(sep) + 1)
Unload Me
End Sub