Sub test()
Dim MyArray As Variant, MyArray1 As Variant
i& = Me.Cells(Rows.Count, 1).End(xlUp).Row
MyArray = Me.Range("A1:F" & i).Value
c& = Application.WorksheetFunction.Count(MyArray)
ReDim MyArray1(1 To c, 1 To 3)
For j& = 2 To UBound(MyArray)
For m& = 2 To 6
k = k + 1
MyArray1(k, 1) = MyArray(j, 1)
MyArray1(k, 2) = MyArray(1, m)
MyArray1(k, 3) = MyArray(j, m)
Next
Next
Sheet2.Range("A2").Resize(c, 3).Value = MyArray1
End Sub
Sub test()
Dim MyArray As Variant, MyArray1 As Variant
i& = Me.Cells(Rows.Count, 1).End(xlUp).Row
MyArray = Me.Range("A1:F" & i).Value
c& = Application.WorksheetFunction.Count(MyArray)
ReDim MyArray1(1 To c, 1 To 3)
For j& = 2 To UBound(MyArray)
For m& = 2 To 6
k = k + 1
MyArray1(k, 1) = MyArray(j, 1)
MyArray1(k, 2) = Format(MyArray(1, m), "mmmmm yyyy")
MyArray1(k, 3) = MyArray(j, m)
Next
Next
Sheet2.Range("A2").Resize(c, 3).Value = MyArray1
End Sub
Hi:
Use this file.
The code is fine you have to customise your date to get the format you need.
I have also converted your item into text. But I am not sure why you want to do this, as long as your original data is in text or numeric the code will pick up the data in the respective formats.
Thanks