1. 为什么需要公式自动编号
写论文或报告时,公式通常需要编号且编号会随着内容增删而变化。Word 自带的公式工具虽然没有 LaTeX 那么智能,但通过「样式分隔符」和一些域代码配合,完全可以实现“插入新公式后编号自动更新,正文引用也能同步”。本文就以 MathType 或 Word 内置公式为例,从头搭建一套自动化方案。
2. 准备工作:样式与自动图文集
2.1 创建专用样式
新建一个样式,比如叫「公式行」。它主要用于容纳一行公式和右边的编号。
- 点击「开始」→「样式」右下角小箭头打开样式窗格。
- 点击「新建样式」:
- 名称:公式行
- 样式类型:段落
- 样式基准:正文
- 格式:居中,段前/段后各 6 磅
- 再创建样式「公式编号」:
- 样式类型:字符
- 格式:字体 Times New Roman,加粗,字号与公式匹配
如果公式在单独一行居中,编号右对齐,可以在段落设置中为「公式行」设置两个制表位:
- 居中的制表位位置:纸张宽度的 50%(如 A4 页宽 21cm,减掉页边距后文字区宽度的 50%),对齐方式:居中
- 右对齐的制表位位置:文字区最右侧,对齐方式:右对齐
这样先按 Tab 让公式居中,再按 Tab 让编号右对齐。
2.2 准备自动图文集
为加快录入,可以把公式编号的域代码做成自动图文集。
- 在一个空白段落中按
Ctrl+F9插入一对域括号{}(注意花括号不能直接敲,必须用Ctrl+F9插入,或者输入域代码后按Alt+F9切换显示)。 - 在花括号内输入:
seq formula \* ARABIC
意思是创建一个序列域,名字为 formula,显示阿拉伯数字。连起来是:{ seq formula \* ARABIC } - 选中这个域代码,按
Alt+F3保存为自动图文集,名称如eqnum,描述随意。 - 此后在需要插入编号的地方输入
eqnum再按F3就能自动插入域代码并显示当前编号。公式每有一个新的{ seq formula },数字就自动加 1。
3. 开始插入公式并编号
3.1 插入公式
用任意方式插入公式(内置公式工具或 MathType)后,按 Tab 键跳到制表位位置,或者自己按空格调整到右边。
方法 A:纯 Tab 制表位法
- 光标在公式行,应用样式「公式行」。
- 在公式后面按
Tab,让光标跳到右侧的编号位置。 - 输入
eqnum然后按F3,编号即出现。
方法 B:利用边框公式工具(推荐 Word 365 用户)
- 插入公式后,保持光标在公式中,点击「公式」上下文选项卡→「工具」→「公式选项」→勾选「自动为公式添加编号」,选择格式。
- 此功能会自动生成形如(1-1)或按章节的编号。但通用性较差,推荐手动方法用来应对各种场景。
3.2 编号格式定制
如果想加上章节号,可以在seq域前面加上STYLEREF域引用章节标题:
{ seq formula \s 1 \* ARABIC }
其中\s 1表示跟随 Heading 1 级别重新计数。这样第一章公式从 1 开始,第二章从 1 开始,像(1-1)、(2-3)。具体需要配合多级列表和标题样式,此处展开较复杂,建议先掌握全局唯一编号,有需要时再查阅STYLEREF用法。
4. 交叉引用公式编号
公式编号后,正文里写“如式(3)所示”时,不能手工敲数字,因为公式顺序一旦调整,所有引用都需手动更新。我们需要用交叉引用。
4.1 书签法(适用于 seq 域编号)
这是最稳定的方法,不依赖 Word 的题注功能。
- 选中公式编号的域结果(即显示的数字),点击「插入」→「书签」。
- 给书签起一个有意义的名字,如
eq_mass_conservation。 - 在正文需要引用的地方:
- 点击「插入」→「交叉引用」。
- 引用类型:书签
- 引用内容:书签文本
- 选中刚才创建的书签,点击「插入」。
- 现在插入的是“书签文本”,也就是公式编号。之后公式编号变了,只需选中整个域代码或全选文档按
F9更新域,引用也会跟着变。
如果插入后显示是域代码而非数字,按Alt+F9切换域代码显示。
4.2 快速更新所有引用
编辑过程中新增或删除了公式,编号顺序变了,只要全选文档(Ctrl+A),按F9,选择「更新整个目录」或「更新所有域」即可刷新全部编号和交叉引用。(对于只含域代码的文档,F9即可)
5. 操作示例:一步步插入并引用
假设要插入一个质量守恒公式并引用。
- 新建段落,应用样式「公式行」。
- 按 Tab 键,插入公式(比如使用内置公式工具输入
m = ρV)。 - 在公式后按 Tab,输入
eqnum并按F3,出现编号(比如 1)。 - 选中编号 1,插入书签
eq_mass_conservation。 - 转到正文段落,写“由质量守恒方程,可得式”,然后插入交叉引用,引用书签
eq_mass_conservation的文本。 - 此时正文显示“由质量守恒方程,可得式 1”。
- 如果在前面又插入一个新公式,其编号变为 1,原公式编号自动变为 2。全选
Ctrl+A后按F9更新域,正文引用也会从“式 1”变成“式 2”。
6. 常见问题
Q1:域显示为花括号代码,不显示数字
A:按Alt+F9切换域代码/域结果显示。Word 可能在切换视图时自动显示代码,再按一次即可。
Q2:更新域后引用显示“错误!未找到引用源”
A:检查书签是否被删除,或者公式编号被直接修改而不是通过更新域刷新。书签名不能有空格和特殊字符。
Q3:公式编号需要带括号(1)
A:可以在域旁边手动添加括号,比如在自动图文集里存({ seq formula })。或者在域代码中直接写{ seq formula \# "0" }再用样式实现格式。最简单的是手动加括号后,将编号字符样式定义为带括号的格式。
Q4:编号想按章节重新计数
A:参考第 3.2 节使用\s开关结合各级标题样式。需要文档标题已应用“标题 1”、“标题 2”等内置样式。
7. 技巧与总结
- 开启域底纹显示:文件→选项→高级→显示文档内容→域底纹:始终显示,这样编号位置一目了然,不容易误删域。
- 打印前务必更新所有域,避免打印出来的编号是旧的。
- 手动编号 + 书签法胜过 Word 自动题注,因为题注在公式行中包含非公式文本时容易错位,且编号与正文混排时问题较多。
- 养成随手插入书签并命名的习惯,方便后续引用和搜索。
把公式编号与交叉引用这套流程掌握后,修改长文档时就会省掉大量手工修改编号的烦恼,让 Word 也能接近 LaTeX 的自动化体验。