Hello prawer,
I don't have Excel 2007, but this macro should work. This will set the Print Area for the ActiveSheet to "A3:D33". The rows you listed will be changed to a height of 1. The sheet will then print out.
Sub PrintoutSheet()
Dim Wks As Worksheet
Set Wks = ActiveSheet
With Wks.PageSetup
.PrintArea = "A3:D33"
.FitToPagesTall = 1
.FitToPagesWide = 1
End With
For Each Row In Array(7, 9, 12, 14, 17, 19, 21, 24, 26, 28, 31, 33)
Wks.Rows(Row).RowHeight = 1
Next Row
Wks.PrintOut
End Sub
Adding the Macro
1. Copy the macro above pressing the keys CTRL+C
2. Open your workbook
3. Press the keys ALT+F11 to open the Visual Basic Editor
4. Press the keys ALT+I to activate the Insert menu
5. Press M to insert a Standard Module
6. Paste the code by pressing the keys CTRL+V
7. Make any custom changes to the macro if needed at this time.
8. Save the Macro by pressing the keys CTRL+S
9. Press the keys ALT+Q to exit the Editor, and return to Excel.
To Run the Macro...
To run the macro from Excel, open the workbook, and press ALT+F8 to display the Run Macro Dialog. Double Click the macro's name to Run it.
Bookmarks