Sub MoveData()
Dim breaks As Integer, i As Integer
Dim col1 As Integer, col2 As Integer
Dim rngCut As Range
Dim pasterow As Integer
breaks = ActiveSheet.VPageBreaks.Count
pasterow = 9
Range("IV65536").Select ' this is a workaround for buggy behavior, see http://support.microsoft.com/default.aspx?scid=kb;en-us;210663
For i = 1 To breaks
If i < breaks Then
col1 = ActiveSheet.VPageBreaks(i).Location.Column
col2 = ActiveSheet.VPageBreaks(i + 1).Location.Column - 1
Else
col1 = ActiveSheet.VPageBreaks(i).Location.Column
col2 = Range("IV1").End(xlToLeft).Column
End If
Set rngCut = Range(Cells(1, col1), Cells(4, col2))
rngCut.Cut Range("A" & pasterow)
pasterow = pasterow + 8
Next i
End Sub