Dim f
Private Sub UserForm_Initialize()
Set MonDico = CreateObject("Scripting.Dictionary")
Set f = Sheets("bd")
temp = f.Range("A2:A" & f.[A65000].End(xlUp).Row)
For i = 1 To UBound(temp, 1)
MonDico(temp(i, 1)) = temp(i, 1)
Next i
Me.ComboBox1.List = MonDico.items
End Sub
Private Sub ComboBox1_Change()
Set code = f.Range("A2:A" & f.[A65000].End(xlUp).Row)
Set ville = f.Range("B2:B" & f.[b65000].End(xlUp).Row)
d = Application.Match(Val(Me.ComboBox1), code, 0)
Me.ListBox1.Clear
For i = d To d + Application.CountIf(code, Val(Me.ComboBox1)) - 1
Me.ListBox1.AddItem ville(i)
Next i
End Sub