Private Sub UserForm_Initialize()
Dim C As Range, tablo(), temp
Dim i As Integer, j As Integer, k As Long
Dim present As Boolean, ech As Boolean
For k = 1 To 3
ReDim tablo(1 To 1)
tablo(1) = Cells(2, k)
For Each C In Sheets("exemple 1").Range(Cells(2, k), Cells(Rows.Count, k).End(xlUp))
present = False
For i = 1 To UBound(tablo)
If tablo(i) = C Then
present = True
Exit For
End If
Next i
If Not present Then
ReDim Preserve tablo(1 To UBound(tablo) + 1)
tablo(UBound(tablo)) = C
End If
Next C
Do
ech = False
For i = 1 To UBound(tablo) - 1
If tablo(i + 1) < tablo(i) Then
temp = tablo(i)
tablo(i) = tablo(i + 1)
tablo(i + 1) = temp
ech = True
End If
Next i
Loop Until Not ech
Me.Controls("ComboBox" & k).List = tablo
Next k
End Sub