1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Dim t As Variant, ta() As String, M As Object
Dim X As Long, i As Long, k As Long
Private Sub UserForm_Initialize()
On Error Resume Next
Set M = CreateObject("Scripting.Dictionary")
t = Range("a2:a" & Range("a65536").End(xlUp).Row)
X = 1
For i = 1 To UBound(t)
If Left(t(i, 1), InStr(t(i, 1), "-") - 1) Then
If Not M.Exists(t(i, 1)) And t(i, 1) <> "" Then
M.Add t(i, 1), t(i, 1)
ReDim Preserve ta(1 To 1, 1 To X)
For k = 1 To 1
ta(k, X) = t(i, k)
Next k: X = X + 1: End If: End If: Next i
combobox1.List = Application.Transpose(ta)
Erase t, ta
End Sub |
Partager