Word VBA:如何知道实际的保存操作是否完成?

时间:2009-12-21 11:40:06

标签: vba automation ms-word

我在使用大型Word文档的Word VBA中遇到Document.SaveAs方法时遇到问题,似乎保存操作是异步的,即。在调用.SaveAs后,它立即返回,但是对于大型Word文档,实际保存操作可能尚未完成,并且正在另一个线程中进行。

所以我想问的是,如果有办法检测实际保存操作是否正在进行或已完成?

我使用Delphi来调用Word的自动化界面,如果它在讨论这个问题时意味着什么,但我不这么认为?

2 个答案:

答案 0 :(得分:2)

办公自动化的保存是一个进程外调用,所以它总是在一个单独的进程上运行,因此它本身是异步的。

除非它给出例外,否则根本无法捕获通知。

答案 1 :(得分:0)

这是:

If ActiveDocument.Saved = True then
/* 'do something */
End If

如果该文档之前没有应用.SaveAs,您也可以检查.Path(即If ActiveDocument.Path <> "" Then ....

请注意,后台保存是异步的,而不是您手动调用的保存 - 由.Saved检查。