【发布时间】:2020-07-07 05:45:06
【问题描述】:
我是 VBA 新手。每次打开文档时,我都会尝试更新 Word 文档中的目录,但它似乎根本没有更新。
在ThisDocument 我做了以下事情:
Private Sub Document_Open()
ActiveDocument.TablesOfContents(1).Update
End Sub
谁能帮帮我?
【问题讨论】:
我是 VBA 新手。每次打开文档时,我都会尝试更新 Word 文档中的目录,但它似乎根本没有更新。
在ThisDocument 我做了以下事情:
Private Sub Document_Open()
ActiveDocument.TablesOfContents(1).Update
End Sub
谁能帮帮我?
【问题讨论】:
问题可能是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 Events 和 Running a macro automatically when a document is created, opened or closed。
【讨论】: