سؤال

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

هل كانت مفيدة؟

المحلول

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

For example:

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

نصائح أخرى

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".

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top