Sub Restit()
Dim TabDonnée() As Variant
Set Dicogroupe = CreateObject("Scripting.dictionary")
With Sheets("Donnée")
fin = .Range("A" & .Rows.Count).End(xlUp).Row
TabDonnée = .Range("A4:D" & fin).Value
End With
For i = LBound(TabDonnée, 1) To UBound(TabDonnée, 1)
If Not Dicogroupe.exists(TabDonnée(i, 3)) Then
Dicogroupe.Add TabDonnée(i, 3), TabDonnée(i, 1) & "/" & TabDonnée(i, 2)
Else
Dicogroupe(TabDonnée(i, 3)) = Dicogroupe(TabDonnée(i, 3)) & "/" & TabDonnée(i, 1) & "/" & TabDonnée(i, 2)
End If
Next i
With Sheets("donnée 1")
.Activate
fin2 = .Range("A" & .Rows.Count).End(xlUp).Row
'.UsedRange.Offset(0, 2).Clear
For Each groupe In .Range("B2:B" & fin2)
If Dicogroupe.exists(groupe.Value) Then
tablo = Split(Dicogroupe(groupe.Value), "/")
groupe.Offset(0, 31).Resize(1, UBound(tablo) + 1) = tablo 'Dicogroupe(groupe.Value)
End If
Next groupe
End With
End Sub