Question

I have the following code which works fine:

Application.PrintOut FileName:="", Copies:=2

This prints my 10 page document twice.

I now want to use the pages option to specify only certain pages to print out:

Application.PrintOut FileName:="", Copies:=2, Pages:="2, 6-10"

I was expecting it to print out pages 2 and 6 to 10 twice, i.e. 2,6,7,8,9,10,2,6,7,8,9,10, but instead it just printed all 10 pages twice.

I am using VBA in Word 2010.

Any idea what I'm doing wrong?


RESOURCES:

From Microsoft Developer Network:

Pages - Optional - Variant - The page numbers and page ranges to be printed, separated by commas. For example, "2, 6-10" prints page 2 and pages 6 through 10

Was it helpful?

Solution

Range:=wdPrintRangeOfPages needs to be added along with Pages.

For example:

Application.PrintOut FileName:="", Copies:=2, Range:=wdPrintRangeOfPages, Pages:="2,6-10"

OTHER TIPS

Alternative solution from the website

expression .PrintOut(Background, Append, Range, OutputFileName, From, To, Item, Copies, Pages, PageType, PrintToFile, Collate, FileName, ActivePrinterMacGX, ManualDuplexPrint, PrintZoomColumn, PrintZoomRow, PrintZoomPaperWidth, PrintZoomPaperHeight

You can use From:="2", To:="5".

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top