Otto, set the print_area first.
Sub foo()
Dim rngtoprint As Range
Set rngtoprint = [a:h]
rngtoprint.Worksheet.Names.Add "print_area", rngtoprint
MsgBox Application.ExecuteExcel4Macro("get.document(50)")
End Sub
--
keepITcool
|
www.XLsupport.com | keepITcool chello nl | amsterdam
Otto Moehrbach wrote :
Excel XP, WinXP
I have the following macro to print the active sheet in reverse order
if more than one page is involved. My question concerns how to
specify a range to print. The line that starts with: "NumPages = "
I believe addresses the active sheet (the used range) and will result
in the number of pages it will take to print the used range. How do
I modify this code if I want to print the range RngToPrint?
Specifically, how would I write the "NumPages =" line such that the
value of NumPages would be the number of pages it takes to print the
range RngToPrint? Thanks you for your help. Otto
Sub ReversePrint()
Dim NumPages As Long
Dim Page As Long
NumPages = ExecuteExcel4Macro("GET.DOCUMENT(50)")
For Page = NumPages To 1 Step -1
ActiveSheet.PrintOut from:=Page, To:=Page
Next Page
End Sub