Can you print xcel in "newspaper colmn" fashion?

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I have a narrow (4 columns) but long (2200 rows) spreadsheet. I am trying to
print in multiple columns on one page (i.e. "newspaper colmns") before it
moves to page 2, etc. I am trying to avoid having 40 pages with one narrow
set of information on the page. I want it to print 2 or 3 "columns" on one
page before it moves to the next page.
 
Joe

This macro will snake 4 columns into 12

Public Sub Snake4to12()
Dim myRange As Range
Dim colsize As Long
Dim maxrow As Long
Const numgroup As Integer = 3
Const NUMCOLS As Integer = 12
On Error GoTo fileerror
colsize = Int((ActiveSheet.UsedRange.Rows.Count + _
((NUMCOLS - 1)) / NUMCOLS)) / numgroup
MsgBox "Number of Rows to Move is: " & colsize
Range("A1").Select
With ActiveCell.Parent.UsedRange
maxrow = .Cells(.Cells.Count).Row + 1
End With
ActiveCell.Parent.Cells(maxrow, ActiveCell.Column) _
.End(xlUp).Offset(1, 0).Select
Set myRange = Range(ActiveCell.Address & ":" _
& ActiveCell.Offset(-colsize, (NUMCOLS - 1)).Address)
myRange.Cut Destination:=ActiveSheet.Range("A1") _
.Offset(0, ((NUMCOLS - 1) - numgroup))
Range("A1").Select
Cells.End(xlDown).Offset(1, 0).Select
Set NextRange = Range(ActiveCell.Address & ":" _
& ActiveCell.Offset(-colsize, (numgroup)).Address)
NextRange.Cut Destination:=ActiveSheet.Range("A1") _
.Offset(0, (NUMCOLS / numgroup))
Application.CutCopyMode = False
Range("A1").Select
fileerror:
End Sub


Gord Dibben MS Excel MVP
 
UH....I will give these a try. Much much more than I ever anticipated!
Anyone know why it is not just a simple push button command like in Word?!
Do either of you guys happen to work for Microsoft?

Thanks for the help!
 
Excel does not have great word processing capabilities because it is basically a
number crunching application, unlike Word which is designed for word processing.

That is why MS has developed the MS Office Suite with several
applications........one application cannot possibly do it all.

I don't work for Microsoft.

If not familiar with VBA and macros, see David McRitchie's site for more on
"getting started".

http://www.mvps.org/dmcritchie/excel/getstarted.htm

In the meantime..........

First...create a backup copy of your original workbook.

To create a General Module, hit ALT + F11 to open the Visual Basic Editor.

Hit CRTL + R to open Project Explorer.

Find your workbook/project and select it.

Right-click and Insert>Module. Paste the code in there. Save the
workbook and hit ALT + Q to return to your workbook.

Run the macro by going to Tool>Macro>Macros.

You can also assign this macro to a button or a shortcut key combo.


Gord
 
Thanks for the help.

Gord Dibben said:
Excel does not have great word processing capabilities because it is basically a
number crunching application, unlike Word which is designed for word processing.

That is why MS has developed the MS Office Suite with several
applications........one application cannot possibly do it all.

I don't work for Microsoft.

If not familiar with VBA and macros, see David McRitchie's site for more on
"getting started".

http://www.mvps.org/dmcritchie/excel/getstarted.htm

In the meantime..........

First...create a backup copy of your original workbook.

To create a General Module, hit ALT + F11 to open the Visual Basic Editor.

Hit CRTL + R to open Project Explorer.

Find your workbook/project and select it.

Right-click and Insert>Module. Paste the code in there. Save the
workbook and hit ALT + Q to return to your workbook.

Run the macro by going to Tool>Macro>Macros.

You can also assign this macro to a button or a shortcut key combo.


Gord
 
Back
Top