Hi, jusciusr,

if all your data is in Column A and starts with Row 1 and each item is only one cell (no blanks) you could use a formula as well as VBA-Code:
Sub ReWriteData()
Dim lngLast As Long
Dim lngCounter As Long
Dim lngTarg As Long
Dim lngCol As Long

Const cstrCol As String = "A"
Const clngTarg As Long = 4

lngLast = Cells(Rows.Count, cstrCol).End(xlUp).Row
lngTarg = 1
lngCol = clngTarg

For lngCounter = 1 To lngLast
  lngCol = lngCol + 1
  Cells(lngTarg, lngCol).Value = Cells(lngCounter, cstrCol)
  If lngCounter Mod 3 = 0 Then
    lngCol = clngTarg
    lngTarg = lngTarg + 1
  End If
Next lngCounter
End Sub
This code will write the data starting at Column E. Please test the code on a copy of the original workbook.

Ciao,
Holger