Bonjour à tous,
Un peu en retard mais, une autre solution, beaucoup plus rapide quand le nombre de client est important. On utilise plutôt une variable tableau plutôt que d'utiliser la méthode Find (celle-ci sera interminable quand le nombre de client est trop élevé) :
Private Sub TextBox1_Change()
Dim Recherche As String
Dim Ligne As Long, i As Long
Dim Plage, dico As Object
ListBox1.Clear
Recherche = TextBox1.Value
Ligne = Sheets("BASE").Range("B" & "65536").End(xlUp).Row
Plage = Sheets("BASE").Range("B2:B" & Ligne).Value
Set dico = CreateObject("scripting.dictionary")
For i = 1 To Ligne - 1
If UCase(Recherche) = UCase(Left(Plage(i, 1), Len(Recherche))) Then dico(Plage(i, 1)) = Plage(i, 1)
Next i
ListBox1.List = dico.keys
End Sub