在Word中自动运行宏OnSave

时间:2008-09-18 21:52:05

标签: vba ms-word ms-office

我有一个刷新文档中所有字段的宏(相当于在字段上执行 F9 )。我想在用户保存文档时自动触发此宏。

在选项下,我可以选择“打印文档时更新字段”,但这不是我想要的。在VBA编辑器中,我似乎只查找Document_Open()事件的事件,而不是Document_Save()事件。

当用户保存文档时是否可以触发宏?

请注意:

  1. 这是Word 97.我知道是 在Word的更高版本中可能
  2. 我不想更换标准     用工具栏上的保存按钮     按钮来运行我的自定义宏。     替换工具栏上的按钮     仅适用于所有文件     希望它影响这一个文件。
  3. 为了理解我需要这个的原因,该文档包含一个“SaveDate”字段,当用户点击“保存”时,我希望在屏幕上更新此字段。因此,如果您可以建议另一种方法来实现这一目标,那么这将是同样好的。

2 个答案:

答案 0 :(得分:1)

据我记得Word 97,你很幸运。 '97中唯一的文件事件是开放和关闭。

我没有Word 97,但在Word 2000+中,您可以设置一个读取文档属性的字段。你可以检查一下。在Word 2003中,它位于插入>下Field ... 和您正在寻找的名为 SaveDate

编辑:呃呃。你已经知道了。误解了你的问题。道歉。

答案 1 :(得分:1)

是的,fencliff是对的,你对Word 97运气不好。

如果升级不是一个选项,我唯一想到的就是使用计时器轮询文件的上次修改时间。我知道它很丑,但是你没有得到事件,也没有你可以覆盖的Word命令。