Recherchev avec plusieurs résultats à afficher en ligne

Re @Leaurens,

J’avais préparé aussi à l’époque une version en VBA.

Option Explicit

Sub GO()
Dim J As Long
Dim I As Integer
Dim K As Long
Dim Indice As Long
Dim Tablo
Dim Nb As Integer

  Application.ScreenUpdating = False
  ReDim Tablo(1 To Range("A" & Rows.Count).End(xlUp).Row - 2, 1 To 2)
  Tablo(1, 1) = Range("A2")
  Tablo(1, 2) = Range("B2")
  Nb = 1
  For J = 3 To Range("A" & Rows.Count).End(xlUp).Row
    For K = 1 To UBound(Tablo)
      If Range("A" & J) = Tablo(K, 1) Then
        For I = 1 To UBound(Tablo, 2)
          If Tablo(K, I) = "" Then
            Tablo(K, I) = Range("B" & J)
            Exit For
          End If
        Next I
        If I > UBound(Tablo, 2) Then
          ReDim Preserve Tablo(1 To UBound(Tablo), 1 To UBound(Tablo, 2) + 1)
          Tablo(K, UBound(Tablo, 2)) = Range("B" & J)
        End If
        Exit For
      ElseIf Tablo(K, 1) = "" Then
        Nb = Nb + 1
        Tablo(K, 1) = Range("A" & J)
        Tablo(K, 2) = Range("B" & J)
        Exit For
      End If
    Next K
  Next J
  With Sheets("R?sultat")
    .Cells.ClearContents
    .Range("A2").Resize(Nb, UBound(Tablo, 2)) = Tablo
    .Range("A1") = "ID client"
    .Range("B1") = "Contrat N?1"
    .Range("B1").AutoFill .Range("B1").Resize(, UBound(Tablo, 2) - 1), xlFillSeries
    .Select
    Rows(1).Font.Bold = True
  End With
End Sub

Fichier ICI==> Leaurens V1.xlsm (20,2 Ko)

Cdlt.

1 « J'aime »