Maybe:
Sub test()
Dim rng As Range, var As Variant, dVar As Variant
Dim hRng As Range, hVar As Variant
Dim Itms As Long, x As Long, y As Long, d As Long
Set rng = Range("B8:M" & Range("B" & Rows.Count).End(xlUp).Row)
Set hRng = Range("B5:M5")
hVar = hRng.Value: var = rng.Value
Itms = Application.CountA(rng.Offset(, 3).Resize(, 9))
ReDim dVar(Itms, 4)
dVar(0, 0) = "UNIT"
dVar(0, 1) = "TANGGAL"
dVar(0, 2) = "RING"
dVar(0, 3) = "PAKAN"
dVar(0, 4) = "QTY"
For x = 1 To UBound(var)
For y = 4 To 12
If var(x, y) > 0 Then
d = d + 1
dVar(d, 0) = var(x, 1)
dVar(d, 1) = var(x, 3)
dVar(d, 2) = var(x, 2)
dVar(d, 3) = hVar(1, y)
dVar(d, 4) = var(x, y)
End If
Next y
Next x
Worksheets.Add
Range("A1").Resize(UBound(dVar) + 1, 5) = dVar
End Sub
Bookmarks