Hi,
You can do this by passing the values of Start page and End page as variables to a print sub.
For example...
Public Sub gPrintRange(ByVal vintStart As Integer, ByVal vintEnd as Integer,ByVal vstrReport)
'Open in preview
DoCmd.OpenReport vstrReport, acViewPreview
'print pages
DoCmd.PrintOut acPages, vintStart , vintEnd , acDraft, 1, False
'close
DoCmd.Close acReport, vstrReport
End Sub
If you then had two text boxes on a form (say txtStartPage and txtEndPage) and a button to print (cmdPrint), and possibly a text box for report name (txtReport)
in the click event of the command button you could have...
gPrintRange txtStartPage,txtEndPage,txtReport
You would want to add an error handler and some validation to the print sub (eg. make sure end page is greater than or equal to start page...)
Hope this is more what you're looking for...?
There are two ways to write error-free programs; only the third one works.