Here is a way to print all selected rows on one page.
The following macro utilizes a worksheet named 'Print' to hold all selected rows. Change the four "Print" references to an unused worksheet name in your workbook, i.e. "Sheet3", etc. Or Insert a new worksheet and rename it 'Print'.
Then, copy the following macro, modified if necessary, to the clipboard:
Sub Extract_to_Print()
Range("A1").EntireRow.Copy Destination:= _
Sheets("Print").Range("A1")
For Each cell In Selection
cell.EntireRow.Copy Destination:= _
Sheets("Print").Range("A" & _
Rows.Count).End(xlUp).Offset(1, 0)
Next
Sheets("Print").PrintOut
Sheets("Print").Cells.ClearContents
End Sub
With your workbook open, press ALT + F11
In the menus at the top of the VBE, select INSERT > MODULE
Paste the macro into the editing area to the right.
Close the VBE and return to the worksheet.
Press ALT + F8
When the Macros window opens, highlight the macro and click 'Options..'
Enter a letter to be used as a keyboard shortcut and click 'OK'.
Save the workbook.
Select a range of rows that you wish to extract and print, by pressing Ctrl + click, as usual.
With the Ctrl key still depressed, simply press your shortcut letter.
That will extract the select list to the 'Print' worksheet, including the header row, print that worksheet, and clear the extracted data from the sheet. You could then select a different set of rows, call the macro, and print that list.