Try this. Im assuming columns C thru J on sheet 2 will be empty.
Option Explicit
Sub abc()
Dim a, b, i As Long, ii As Long, iii As Long, n As Long
Dim aDesc
With Worksheets("sheet1")
aDesc = .Range("b1:g1")
a = .Range("a6", .Cells(Rows.Count, "g").End(xlUp))
End With
ReDim b(1 To Rows.Count, 1 To 10)
For i = 1 To UBound(a)
For ii = 1 To UBound(aDesc, 2)
If a(i, ii + 1) > 0 Then
For iii = 1 To a(i, ii + 1)
n = n + 1
b(n, 1) = a(i, 1)
b(n, 10) = aDesc(1, ii)
Next
End If
Next
Next
With Worksheets("sheet2")
.Cells(6, "b").Resize(n, 10) = b
End With
End Sub
Bookmarks