Bonjour, Salut h2so4 !
Sub RecompTbl()
Dim d As Object, Tbl(), k, itm, i%, n%, j%, a%
Set d = CreateObject("Scripting.Dictionary")
With Worksheets("Feuil1")
n = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 2 To n
k = .Cells(i, 1)
If d.exists(k) Then
itm = d(k) & ";" & .Cells(i, 2) & ";" & .Cells(i, 3)
d(k) = itm
Else
itm = .Cells(i, 2) & ";" & .Cells(i, 3)
d(k) = itm
End If
Next i
End With
a = d.Count: j = 2: n = 0: ReDim Tbl(a, j)
For Each k In d.keys
itm = Split(d(k), ";"): n = n + 1
If UBound(itm) > j Then
j = UBound(itm) + 1: ReDim Preserve Tbl(a, j)
End If
Tbl(n, 0) = k
For i = 0 To UBound(itm)
Tbl(n, i + 1) = itm(i)
Next i
Next k
Tbl(0, 0) = "adresse"
For i = 2 To j Step 2
Tbl(0, i - 1) = "prénom résident " & i / 2
Tbl(0, i) = "nom résident " & i / 2
Next i
With Worksheets.Add(after:=Worksheets("Feuil1"))
With .Range("A1").Resize(a + 1, j + 1)
.Value = Tbl
.Borders.Weight = xlThin
With .Rows(1)
.HorizontalAlignment = xlCenter
.Font.Bold = True
End With
.Columns.AutoFit
End With
.Activate
End With
End Sub
Cordialement.