我期待有一种方法来检查文档是否已更改。
Activedocument.Saved
是不够的,因为如果您更改某项并撤消此操作,则文档尚未更改,但是.Saved
将会更改。我发明了从.WordOpenXML
进行校验和。
在打开的主文档上,我计算校验和
For each sd in Activedocument.SubDocuments
'calculate and remember checksum of subDocument
...
Next sd
在关闭主文档时
For each sd in Activedocument.SubDocuments
'calculate and compare with previous checksum of subDocument
...
Next sd
但是.WordOpenXML
的每个检查都返回不同的值。看起来每个调用都会生成WordOpenXML值。
可以避免这种情况吗?
Debug.Print Selection.WordOpenXML=Selection.WordOpenXML
恢复False
:-)
或者您可能还有其他方法来检查文档是否已更改?