我的代码在我自己的个人笔记本电脑上运行良好,代码打开一个 Word 文档并使用默认打印机打印它。
代码是:
Private Sub CommandButton1_Click()
' Step 1
Dim objWord As New Word.Application
' Hidden window!
objWord.Visible = False
' Save the original printer, otherwise you will reset the system default!
Dim previousPrinter As String
' Step 2
Dim objDoc
Set objDoc = objWord.Documents.Open("test.docx")
' Step 3 -- in this case, print out the document without any prompts
objDoc.PrintOut
' Restore the original printer
objWord.ActivePrinter = previousPrinter
' Step 4
objDoc.Close
' Step 5
objWord.Quit
MsgBox (objWord.ActivePrinter)
End Sub
但是,当我在办公室尝试此操作时,代码中没有任何错误,但是没有任何内容发送到打印机。有什么可以导致这种情况的吗?它是一台施乐打印机(在网络上),它使用跟随打印
如果你强迫它在另一台打印机上打印,那么你需要这样的东西:
previousPrinter = objWord.ActivePrinter
For i = 0 To 15
curNePrint = VBA.Format(i, "00")
On Error Resume Next
objWord.ActivePrinter = "\\ServerName\printername z111b on ne" & curNePrint & ":"
Next i
objWord.PrintOut Copies:=1
ObjWord.ActivePrinter = previousPrinter
On Error Goto 0
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句