# 图号不能手打：编号是算出来的，引用是查书签的

题注靠 SEQ 域数出编号，正文引用靠 REF 域查隐藏书签——搞清这两条链，删改图后一次 F9 就能全篇对齐

> 域与交叉引用 · 图片与对象定位 · 排版规范 · 约 6 分钟 · 10 月 26 日

## 本篇要点

1. 手打的“图 3”在 Word 里只是普通字符，Word 不知道那是编号，所以既不能重排，也不能被引用。
2. 插入题注会在图下另起一个题注样式的段落，并插入 SEQ 域；同一标识符的 SEQ 每出现一次加一，所以位置决定编号，增删图后编号会随重排自动变。
3. 标签不同就是不同的序列：“图”和“图表”各数各的。
4. 交叉引用插入的是 REF 域，指向 Word 自动加在题注上的隐藏书签 _Ref…，书签圈住哪一段由插入时选的“引用内容”决定。
5. 引用认的是那张图而不是那个号，图挪位后更新一下引用就显示新号，因为书签一直挂在同一张图上。
6. “错误！未找到引用源”表示书签被删了：整条题注删掉重做会生成新隐藏书签，老引用仍指向已经不存在的旧书签。
7. 题注编号随重排会自己变，交叉引用不会自动更新，必须全选后按 F9；页眉页脚和文本框里的域要单独更新，更新后还要检查有没有报错。

---

来看一个几乎人人遇到过的场景。报告写到一半，你把第二章里那张“图 5”删掉了。后面的图很配合，立刻变成图 5、图 6……可正文里那二十几处“见图 5”还是旧的编号，你只好一段段翻回去改。

上一篇讲的是图为什么会跑（[图片为什么会跑](https://pangzhengboyin.com/articles/word-inline-vs-floating-pictures-anchor-d6dcca5c)）。这一篇的问题出在别处：**你手打的“图 3”，在 Word 眼里就是三个普通字符，它从来不知道那是个编号。**

## 文档里的字，有两种来源

一种是你敲进去的，“系统架构如下图所示”里的每个字都是。另一种是**域**：文档里存的是“怎么算”，屏幕上显示算出来的结果。上一篇讲的自动目录就是域，页码也不是写死的数字，是由 PAGEREF 域查出来的（[自动目录不靠手敲](https://pangzhengboyin.com/articles/how-word-table-of-contents-gets-headings-and-page-numbers-4ec72ec2)）。

手打的“图 3”属于第一种。Word 只知道这里有“图”和“3”，不知道这个 3 是第几张图的序号，也就没办法帮你重排、更新或引用它。**所有“图号乱掉”的麻烦，根子都是把该算出来的数当成了要写下来的字。**

## 题注：编号不是写上的，是数出来的

用“引用 → 插入题注”给图加题注，Word 做了三件事：在图的下面另起**一个段落**，套上“题注”样式；在段首插入一个 SEQ 域，中文 Word 里长这样 `{ SEQ 图 \* ARABIC }`；光标停在后面，等你写说明文字。

关键在第二步。SEQ 的规则很简单：**同一个标识符每出现一次，就往上加一。** 所以“图 3”的含义不是“编号为 3 的图”，而是“在这条叫‘图’的序列里，我是第 3 个”。**是位置决定编号，不是编号决定位置。**

顺着这条规则往下想，麻烦就自己解决了：删掉第 5 个，后面每个的“第几个”都变了，重排时 Word 重算这些域，编号也跟着变；中间插一张新图同理。你从来没打过号，也就没有号要改。

顺带一句：序列是按标签分开的。题注标签一半写“图”、一半写“图表”，Word 就当成两条序列，各自从 1 数起，看着像编号错乱，其实是两套号。

## 交叉引用：正文那句话里存的不是 3

题注解决了图上那个号，正文里的“见图 3”还得手打。交叉引用要做的正是这一半：光标停在“见”后面，打开“引用 → 交叉引用”，引用类型选“图”，引用内容选“只有标签和编号”，选中那张图，插入。屏幕上显示“图 3”，看着和手打的一样。

但两者底下的机制完全不同。插入的那一瞬间，Word 干了两件事：在那条题注上**加一个隐藏书签**，名字像 `_Ref123456789`，书签圈住的范围取决于你选的“引用内容”：选“整项题注”就圈住整段，选“只有标签和编号”就只圈住“图 3”[2]；同时在正文里插入 `{ REF _Ref123456789 \h }` 这样的域，意思是“把那个书签现在圈着的内容抄到这里”[4]。

所以“见图 3”的真相是“见书签 `_Ref123456789` 处的内容”。更新这条引用时，Word 不看你原来打的是几，而是跑到书签现在的位置，看它圈着什么，抄过来。

**由此得到一个很重要的性质：引用认的是那张图，不是那个号。** 把图 3 挪到图 1 前面，它变成图 1，正文里那条引用更新后也显示图 1，因为书签一直挂在这张图上，从没换过。手打的“图 3”跟着的是字符串，图一挪，它指的就不是原来那张了。

书签默认看不见，就算开了“显示书签”也看不到，因为名字以下划线开头，属于隐藏书签；要到“插入 → 书签”里勾上“隐藏书签”才列得出来 [4]。这是排查错误的入口。

![Word 的书签对话框，勾选“隐藏书签”后才会列出交叉引用自动生成的 _Ref 书签](https://avantixlearning.ca/wp-content/uploads/2020/07/bookmark-dialog-box-microsoft-word.png)

## “错误！未找到引用源”是什么意思

**它表示那个书签不见了，并非说引用写错了。**

书签圈住的是实际内容。把整条题注选中删掉，书签跟着内容一起没了；只删了书签范围内的那几个字，书签同样被删。REF 域更新时找不到书签，Word 只能把错误信息当结果显示出来 [1]。

这条分界也划出了安全与危险：引用的是“标签和编号”，你只改后面的说明文字，书签没被碰，引用照旧有效；整条题注删掉重做，或者删掉被书签圈住的那段字，链接就断了。

这里有个容易想当然的地方：删了题注再重新插一条，看着“图 3”又回来了，其实那是**新**题注、**新**隐藏书签，老引用指向的旧书签已经不存在了。位置、号、文字全一样，链接却是断的。

## 为什么号已经对了，引用还错着

因为两种域更新的时机不一样。题注的编号跟着重新分页一起重算，通常你删完一张图，后面的号已经变了。但**交叉引用不会自己更新**，官方的说法是：题注会自动重排，引用要等你更新才变 [3]。

“号对了、引用还是旧的”原因是设计如此，并非矛盾。一次修好全篇的办法只有一个：**Ctrl+A 全选，按 F9。**

两个必须知道的细节：全选更新不到页眉页脚和文本框里的域，那两处要单独进去再按一次 F9，它们是独立区域，主文档的全选管不到；更新之后要去搜一下“错误”，因为域显示的是错误文本，不会弹窗提醒。**F9 只是让问题露出来，并不负责把它修好。**

如果确实已经断了，修法是重插一条正确引用，再把老引用批量指过去：Alt+F9 显示域代码，从新引用里抄出那串 `_Ref` 编号，Ctrl+H 查找老编号、全部替换成新编号，再按 Alt+F9 切回 [2]。麻烦，但比一段段找快。真正省事的做法是记住前面那条界线：**别整段删题注，只改里面的字。**

```mermaid
flowchart LR
  A["插入题注"] --> B["题注段落 + SEQ 域"]
  B --> C["编号=在这条序列里的第几个"]
  C --> D["增删图后编号自动重排"]
  E["正文插入交叉引用"] --> F["REF 域 + 隐藏书签 _Ref…"]
  F --> G["指向那张图，不指向那个数字"]
  G --> H["不会自动更新"]
  D --> I["Ctrl+A → F9"]
  H --> I
  I --> J["报“错误！未找到引用源”=书签被删"]
```

## 落到做法上，三条纪律就够

**全篇所有图号、表号，一律由“插入题注”生成。** 判断标准很硬：用 Alt+F9 显示域代码，每个图号的位置都该有一对花括号，没有的就是手打的。

**正文里所有“见图 X”“见表 X”，一律由交叉引用生成。**

**交付前 Ctrl+A 再按 F9，然后检查报错。** 顺序不能反。

到这里，图有了会自己变的号，正文里的引用也有了指针。但还有一半问题没解决：图在上一页页底，题注跑到下一页页首，中间隔着一整页正文。题注是独立的一段，它和图分属两个段落，凭什么一定待在一起？这是下一篇的事。

## 思维导图

```mermaid
flowchart LR
  A["图号为什么不能手打"] --> B["手打的字：Word 不知道那是编号"]
  A --> C["题注：SEQ 域"]
  A --> D["交叉引用：REF 域 + 隐藏书签"]
  C --> C1["同一标识符依次加一"]
  C1 --> C2["位置决定编号，增删后自动重排"]
  C1 --> C3["标签不同=两条序列"]
  D --> D1["书签范围由“引用内容”决定"]
  D1 --> D2["引用认图不认号"]
  D1 --> D3["书签被删=错误！未找到引用源"]
  C2 --> F["Ctrl+A 再 F9 一次更新"]
  D2 --> F
  F --> G["更新后检查报错"]
```

## 术语表

- 域（field）：文档里存“怎么算”、屏幕上显示算出来的结果的那类内容；目录页码和图号都是域，改的是算式不是字面。
- SEQ 域：给题注编号的域，同一标签每出现一次加一，所以编号反映的是它在序列里的位置。
- 隐藏书签（_Ref…）：插入交叉引用时 Word 自动加在题注上的标记，名字以下划线开头，默认不显示，要勾“隐藏书签”才看得到；它没了就显示“错误！未找到引用源”。
- REF 域：交叉引用的实际内容，“把某个书签现在圈住的东西抄到这里”，所以它跟着对象走，不跟着数字走。
- 更新域：让域重新计算的动作用 F9，全篇更新是 Ctrl+A 再 F9；这一步不会自动发生。

## 来源

1. [Microsoft Support: Troubleshoot bookmarks — 书签丢失时显示“错误！未找到引用源”，以及如何显示书签、定位断链](https://support.microsoft.com/en-us/word/troubleshoot-bookmarks)
2. [Microsoft Q&A: Changing captions and cross references — _Ref 隐藏书签的范围随“引用内容”变化，删掉含书签的内容会报错，以及 Alt+F9 加查找替换批量改指向](https://learn.microsoft.com/en-us/answers/questions/4876171/changing-captions-and-cross-references)
3. [Microsoft Q&A: Embedding figure and table numbers in the supporting text — 题注自动重排编号，交叉引用需全选后按 F9 才更新](https://learn.microsoft.com/en-us/answers/questions/4908984/embedding-figure-and-table-numbers-in-the-supporti)
4. [Avantix Learning: How to Insert, Format and Update Cross-References in Word — REF 域语法、隐藏书签的查看方式、更新域，以及页眉页脚中的域需单独更新](https://www.avantixlearning.ca/microsoft-word/how-to-insert-format-and-update-cross-references-in-word/)
5. [Microsoft Support: Insert a caption for a picture — 官方“插入题注”操作说明与自定义标签](https://support.microsoft.com/en-us/office/insert-a-caption-for-a-picture-bb74994c-7f8b-457c-be85-92233177a356)

---

原文：https://pangzhengboyin.com/articles/word-caption-seq-cross-reference-2256f8be

> **庞征博引** · 想学的，慢慢都会
>
> 庞征博引是把想学的东西写成连载的 AI 学习工具：每篇 5–10 分钟，边读边问，接下来学什么跟着你走。这篇就是这样写出来的。
>
> 开始你自己的连载 → https://pangzhengboyin.com
