【发布时间】:2020-08-12 00:46:57
【问题描述】:
我试图运行的代码在 excel vba 中,它应该打开一个 word 文档打印它然后关闭文档。由于某种原因,代码似乎没有完成将文档发送到打印机,但它仍然关闭。因此代码运行完成并且不会生成错误消息,但没有任何内容可以打印。
当我逐步运行代码时,文档确实可以打印。我尝试添加: Application.Wait(Now + TimeValue("0:00:05")) 给它时间工作。我尝试了该行的另一种形式,以防程序告诉 word 等待而不是 excel:Excel.Application.Wait(Now + TimeValue("0:00:05"))。我也尝试过让时间等待 10 秒而不是 5 秒。
任何帮助都会很棒
If ENG28 = "" Then
Else
Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Open(ENG28)
objWord.Visible = True
objDoc.PrintOut
Application.Wait(Now + TimeValue("0:00:05"))
objWord.Quit 0
End If
【问题讨论】:
-
打印作业通常需要一分钟才能完成。作为 Wait 的替代方案,请查看 Sleep 和 DoEvents 循环,其中一个可能更适合您的应用程序。
标签: excel vba printing ms-word