我正在处理一个项目,我需要在文档打印后将文档返回到某个特定状态。我找到了DocumentBeforePrint event,但找不到DocumentAfterPrint事件。 记录不完整或存在其他解决方法吗?MS Word中是否存在DocumentAfterPrint事件?
1
A
回答
2
这里是one workaround基于子程序名称。我不相信像你期望的那样有一个特定的事件。代码如下:
Sub FilePrint()
'To intercept File > Print and CTRL-P'
MyPrintSub
End Sub
Sub FilePrintDefault()
'To intercept the Standard toolbar button'
MyPrintSub
End Sub
Sub MyPrintSub()
Dialogs(wdDialogFilePrint).Show
'Your code here, e.g:'
MsgBox "I am done printing."
End Sub
更新:请注意Will Rickards的答案在下面。
1
看看应用程序事件我看不到它。 我也没有在文档事件中看到它。 请注意,上面提供的解决方法是使用FilePrint和FilePrintDefault方法,您应该阅读this site。这些方法取代了内置函数。所以你实际上需要在那里添加代码或者让它为你生成实际打印的文字。 后台打印也可能导致您的代码在完成打印之前执行。如果你真的必须在印刷后运行某些东西,你需要disable background printing。
0
我不相信任何建议的解决方法在Word 2010中都能正常工作。但是,我通过在documentBeforePrint
事件的末尾使用application.onTime()
方法取得了成功,以使其他过程在几秒钟内执行后来。