如何通过Word VBA宏将交叉引用字段的PreserveFormatting参数设为True
Word VBA宏批量设置所有交叉引用字段的「更新时保留格式」
Word中插入的交叉引用字段(类型为wdFieldRef)默认PreserveFormatting参数为false,手动修改需要右键字段选择「编辑域」并勾选「更新时保留格式」,但录制宏无法捕捉这个操作。以下是可以批量将文档中所有该类型字段的PreserveFormatting设为true的VBA宏代码:
Sub SetAllRefFieldsPreserveFormatting() Dim fld As Field ' 遍历文档中所有字段 For Each fld In ActiveDocument.Fields ' 判断是否为交叉引用字段(wdFieldRef) If fld.Type = wdFieldRef Then ' 设置PreserveFormatting为True,对应「更新时保留格式」勾选状态 fld.PreserveFormatting = True End If Next fld MsgBox "所有交叉引用字段的「更新时保留格式」已批量启用", vbInformation End Sub
代码说明
- 遍历当前激活文档的所有字段,精准筛选出交叉引用类型的字段
- 直接修改字段的
PreserveFormatting属性,效果等同于手动勾选「更新时保留格式」 - 执行完成后弹出提示框确认操作结果
使用步骤
- 打开目标Word文档,按下
Alt + F11打开VBA编辑器 - 插入新模块:右键左侧项目窗格的文档名称 → 插入 → 模块
- 将上述代码粘贴到模块窗口中
- 按下
F5运行宏,或回到Word界面通过「开发工具」→「宏」选择运行
内容的提问来源于stack exchange,提问作者TechDoc01
相关产品推荐
相关产品推荐

