Sub test()
Dim Tvnd As Variant, TClient As Variant
Dim i&, L&
Dim D As Object, PlgVnd As Range, PlgClient As Range
'Plage des vendeurs
Set PlgVnd = Sheets("Feuil1").Range("$B$2:$B7")
'Plage des clients (le 2 est pour la deuxième colonne)
Set PlgClient = Sheets("Feuil1").Range("$B15:" & Cells(Rows.Count, 2).End(3).Address)
Set D = CreateObject("scripting.dictionary")
Tvnd = PlgVnd
TClient = PlgClient
ReDim Preserve TClient(1 To UBound(TClient, 1), 1 To 2)
For i = LBound(TClient, 1) To UBound(TClient, 1)
If TClient(i, 1) <> "" Then
If Not D.Exists(TClient(i, 1)) Then
L = L + 1
If L > UBound(Tvnd, 1) Then L = 1
D(TClient(i, 1)) = Tvnd(L, 1)
TClient(i, 2) = Tvnd(L, 1)
Else
TClient(i, 2) = D(TClient(i, 1))
End If
End If
Next i
PlgClient.Resize(UBound(TClient, 1), UBound(TClient, 2)) = TClient
End Sub