我正在开发一个项目,我需要在打印后将word文档返回到某个状态。我找到了DocumentBeforePrint event但我找不到DocumentAfterPrint事件。 文档记录不完整还是存在其他一些解决方法?
答案 0 :(得分:2)
这是基于子程序名称的one workaround。我不相信你想要的特定DocumentAfterPrint
事件。这是代码:
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 :(得分:1)
查看应用程序事件我看不到它。 我也没有在文件事件中看到它。 请注意上面提供的解决方法,即使用FilePrint和FilePrintDefault方法,您应该阅读this site。这些方法取代了内置函数。所以你实际上需要在那里添加代码或者为它生成代码来实现打印。 后台打印也可能导致代码在完成打印之前执行。如果你真的必须在打印后运行一些东西,你需要disable background printing。
答案 2 :(得分:0)
我不相信任何建议的解决方法都适用于Word 2010.但是,我在application.onTime()
事件结束时使用documentBeforePrint
方法取得了成功几秒钟后要执行的程序。