Printing 2 sets of coulmns on one page

B

Bill

I have a 2500 entries of three columns. I would like to print 2 sets of the
3 columns on one page (to cut my paper usage in half. Any help is
appreciated.

Thanks
Bill
 
G

Gord Dibben

Sub Set_Two_Times()
Dim iSource As Long
Dim iTarget As Long
Dim cCols As Long
Dim rrows As Long

iSource = 1
iTarget = 1
cCols = 3
rrows = InputBox("rows per set")
Do
Cells(iSource, "A").Resize(rrows, cCols).Cut _
Destination:=Cells(iTarget, "A")
Cells(iSource + rrows, "A").Resize(rrows, cCols).Cut _
Destination:=Cells(iTarget, (cCols + 1))
iSource = iSource + (rrows * 2)
iTarget = iTarget + (rrows)
PageBreak = xlPageBreakManual
Loop Until IsEmpty(Cells(iSource, "A").Value)

End Sub

Tips................enter a number of rows say 56 in inputbox.

This will move rows 57:112 to D1:F56 and shift columns A:C up.

And so on down the sheet.

You will have to adjust pagebreaks depending upon your margin settings.


Gord Dibben MS Excel MVP
 
B

Bill

Thanks worked great

Gord Dibben said:
Sub Set_Two_Times()
Dim iSource As Long
Dim iTarget As Long
Dim cCols As Long
Dim rrows As Long

iSource = 1
iTarget = 1
cCols = 3
rrows = InputBox("rows per set")
Do
Cells(iSource, "A").Resize(rrows, cCols).Cut _
Destination:=Cells(iTarget, "A")
Cells(iSource + rrows, "A").Resize(rrows, cCols).Cut _
Destination:=Cells(iTarget, (cCols + 1))
iSource = iSource + (rrows * 2)
iTarget = iTarget + (rrows)
PageBreak = xlPageBreakManual
Loop Until IsEmpty(Cells(iSource, "A").Value)

End Sub

Tips................enter a number of rows say 56 in inputbox.

This will move rows 57:112 to D1:F56 and shift columns A:C up.

And so on down the sheet.

You will have to adjust pagebreaks depending upon your margin settings.


Gord Dibben MS Excel MVP



.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top