Print each row of an Excel Spreadsheet is a list on a single page
I have a large Excel Spreadsheet. Each Row has 30 columns. I would like to print each row as list on a single page. There are 100 rows with 30 columns. I would like to print 100 pages each with a list of 30 items, one for each column.
How can I do this.
Thanks.
21 Answer
You can adjust the row height to somewhere around 250, this will force each row to print on a separate page (you may need to experiment with different row heights and keep checking the print preview, depending on what paper size you're using).
If you need to ensure the headers are visible above each row, go to Page Layout > Print Titles, and then enter the row(s) where the headers are under "Rows to repeat at top".
Can also be done with VBA with the following macro:
Sub Print1RowPerPage()
Dim Rng As Range
Dim WorkRng As Range
Dim Ws As Worksheet
On Error Resume Next
TitleId = "Select Range"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", TitleId, WorkRng.Address, Type:=8)
Set Ws = WorkRng.Parent
For Each Rng In WorkRng
Ws.PageSetup.PrintArea = Rng.EntireRow.Address
Ws.PrintPreview
Next
End SubThis will require you to click "Print" individually on each preview for the 100 rows though. Shouldn't be too time consuming as it's literally just clicking over and over in the same place, but possibly a little annoying.