Sub test()
Dim i&, J&, K&, MAX&
Dim T As Variant, TReport As Variant, TreportTranspose As Variant
With Sheets("Feuil1")
T = .Range(.Cells(6, 2), .Cells(.Rows.Count, 2).End(3)(1, 3))
MAX = WorksheetFunction.Sum(.Range(.Cells(6, 4).Address & ":" & .Cells(.Rows.Count, 2).End(3)(1, 3).Address))
End With
ReDim TReport(1 To MAX, 1 To 2)
ReDim TreportTranspose(1 To 2, 1 To MAX)
For i = LBound(T, 1) To UBound(T, 1)
For J = 1 To T(i, 3)
K = K + 1
TreportTranspose(1, K) = T(i, 1)
TreportTranspose(2, K) = T(i, 2)
TReport(K, 1) = T(i, 1)
TReport(K, 2) = T(i, 2)
Next J
Next i
Sheets("Feuil2").Cells(2, 1).Resize(MAX, 2) = TReport
Sheets("Feuil3").Cells(2, 1).Resize(2, MAX) = TreportTranspose
End Sub