我有一个Word文档,是技术说明书,想把它打印成小手册,就用A4纸张缩小打印,每面打印4页,正反两面都要打印,因为文档有120多页,为了便于打印后的页码不乱能够装订成册,就用VBA编写了一个打印程序,下面的TestPrt是我打印测试用的,我要的是这样的效果:在正面纸张按顺序打印出4,1,8,5这四页,在反面纸张按顺序打印出2,3,6,7这四页。但是当我运行TestPrt过程后却发现打印出来了好多页,根本不是我要的第4,1,8,5,2,3,6,7这8页,请各位高手指教!测试代码如下:
Sub TestPrt()
PrintFuc "4,1,8,5,2,3,6,7", 2
End Sub
Function PrintFuc(PrintStr As String, Row As Integer) '打印函数,Row=1为每面打两页,Row=2为每面打四页
Dim PrintYesOrNo As VbMsgBoxResult
PrintYesOrNo = MsgBox("下面将要打印的页码是:" & PrintStr, vbOKCancel, "打印")
If PrintYesOrNo = vbOK Then
Application.PrintOut FileName:="", Range:=wdPrintRangeOfPages, Item:= _
wdPrintDocumentContent, Copies:=1, Pages:=PrintStr, PageType:= _
wdPrintAllPages, ManualDuplexPrint:=False, Collate:=True, Background:= _
True, PrintToFile:=False, PrintZoomColumn:=2, PrintZoomRow:=Row, _
PrintZoomPaperWidth:=11907, PrintZoomPaperHeight:=16839
Else
MsgBox "您取消了打印!"
End If
End Function
下面附上我的技术文档(共四个文件,下载解压后放在同一个文件夹,并运行“合并.bat”即可:
KeqF1eM3.rar
(127 Bytes, 下载次数: 17)
|