使用VBA更新/创建Word中的目录

时间:2010-06-22 13:29:11

标签: ms-word word-vba

我是VBA的新手。我每次打开文档时都试图更新Word文档中的目录,但它似乎根本没有更新它。

ThisDocument我完成了以下操作:

Private Sub Document_Open()
ActiveDocument.TablesOfContents(1).Update
End Sub

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:3)

问题可能是使用Document_Open - 你必须在模板中设置事件,而不是你要打开的文档。您还可以使用Auto_Open宏。请注意,ActiveDocument也可能是罪魁祸首的一部分 - 当您执行Document_Open事件时,您打开的文档可能还不是实际的活动文档 - 您可能需要设置对文档的引用“重新打开像:

Dim doc As Document
set doc = Documents.Open(your path here)
doc.TablesOfContents(1).Update

最后,您的宏安全设置可能会禁止执行任何操作。

在所有情况下,请仔细阅读Take Control of Microsoft Word Through EventsRunning a macro automatically when a document is created, opened or closed