Bonjour Osaka, le forum,
Salut Rag02700,
Un essai....
Sub Macro1()
Dim tablo, tabloR(), k As Long, i As Long
Dim dico As Object
With Sheets("MVTS")
tablo = .ListObjects("Tableau_MVTS").DataBodyRange
Set dico = CreateObject("Scripting.Dictionary")
k = 0
For i = 2 To UBound(tablo, 1)
If Not dico.exists(tablo(i, 3)) Then
dico(tablo(i, 3)) = tablo(i, 3)
ReDim Preserve tabloR(1 To 9, 1 To k + 1)
tabloR(1, 1 + k) = tablo(i, 3)
tabloR(2, 1 + k) = tablo(i, 4)
tabloR(3, 1 + k) = tablo(i, 5)
'tabloR(5, 1 + k) = Application.SumIf(.ListObjects("Tableau_MVTS").ListColumns(3).DataBodyRange, tablo(i, 3), .ListObjects("Tableau_MVTS").ListColumns(6).DataBodyRange)
tabloR(8, 1 + k) = tablo(i, 7)
k = 1 + k
End If
Next i
End With
With Sheets("ETAT_STOCK")
.Range("A5").CurrentRegion.Offset(1, 0).ClearContents
On Error Resume Next
.Range("A6").Resize(UBound(tabloR, 2), 9) = Application.Transpose(tabloR)
End With
End Sub
Cordialement,