You can as mentioned "steal" the existing ones, and if you steal the print
preview..then it should work.
However, I use code. The two options I use
The select object command is needed to fix a "focus" bug if you have a form
with a timer function.
For the code that pops up the printer dialog (so the user can change
printers etc, or in YOUR case enter the starting/ending pages).
Note that the following code assumes the report is already open. In fact,
you should for all reports make a nice custom menu bar.
You can use:
On Error Resume Next
DoCmd.SelectObject acReport, Screen.ActiveReport.Name
DoCmd.RunCommand acCmdPrint
The select object command is needed to fix a "focus" bug if you have a form
with a timer function.
The code to print right to the printer while in preview mode can be:
On Error Resume Next
Dim strReportName as string
strREportName = Screen.ActiveReport.Name
DoCmd.SelectObject acReport, strReportName
DoCmd.PrintOut acPrintAll
Note that you can/could change the above (in either case) to prompt the user
for the start/end page..but I usually just let them use the printers built
in ability from the printer dialog to do this.
strStart = inputbox("Enter Straing page")
strEnd = inputbox("Enter Ending page")
DoCmd.PrintOut acPages, strStart,strEnd
However, I think it is too much to bother with start/end prompts..and you
best just use the above code to pop up the standard printer dialog box.
And, note that I always use/build a custom menu bar for all reports. Here is
screen shot that uses the above actual code (note the two first print
options...print to default, and print to selected printer).
http://www.members.shaw.ca/AlbertKallal/test/bu1.gif
..