如何解决Word toc 使用 VBA 显示级别调整
总的来说,我对 VBA 还很陌生,但目前我正在使用 IBM 的 Rational Publishing Engine 发布文档,该引擎发布 DOORS(面向动态对象需求系统)之外的文档。发布后,有一系列宏可用于扩展OLEs、合并段落、centerFigures 等。我希望添加一个宏来调整我的目录以仅显示级别 2。我在想像下面这样的东西工作,但没有取得太大的成功。
Sub Tocadjust()
Dim toc As TableOfContents
Dim tocEntry As Field
Set toc = ActiveDocument.TableOfContents(1)
For Each tocEntry In toc.Range.Fields
tocEntry.Select
toc.UpperHeadingLevel = 1
toc.LowerHeadingLevel = 2
Next
End Sub
解决方法
Word 中的目录本身就是字段。
它们通常不包含字段。他们确实有开关。
运行以下代码会添加一个将 TOC 限制为级别 1 和 2 的开关。
Sub TocAdjust()
' Charles Kenyon
' Limit first TOC to levels 1 and 2
'
ActiveDocument.TablesOfContents(1).LowerHeadingLevel = 2
ActiveDocument.TablesOfContents(1).UpperHeadingLevel = 1
End Sub
如果没有目录字段,这将引发错误。请注意,图表也使用 TOC 字段。
这是在运行宏之前和之后 TOC 字段的样子。
您的代码试图对“条目”而不是一般领域采取行动。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。