重点内容
适用版本
桌面版通用(Excel 365 / 2021 / 2019 等)。
建立两张表格
- 选中第一份数据范围(城市 + 国家)内任意单元格
- 在 Insert(插入)选项卡的 Tables(表格)组中点击 Table
- Excel 自动选中数据范围,确认后点击 OK
- 对第二份数据(国家 + 国家代码)重复步骤 1-3,建立第二张表格
两张独立的表格,一张城市+国家、一张国家+国家代码
用 VLOOKUP 合并数据
- 在第一张表新增一列(例如 Code),选中该列第一格 C2
- 输入 VLOOKUP 公式,第一参数点选 B2(国家所在列),Excel 会自动显示成结构化引用
[@Country] - 第二参数框选第二张表的整个范围 E2:F6,Excel 自动显示成表名
Table2 - 第三参数输入
2(因为国家代码在第二张表里是第 2 列) - 第四参数输入
FALSE(精确匹配) - 完整公式类似:
=VLOOKUP([@Country], Table2, 2, FALSE) - 按 Enter,Excel 会自动把公式向下复制到整列(因为这一列已经是表格的一部分)
Code 列自动填满对应国家代码的结果
新增城市自动带出代码
因为整张表已经用结构化引用建立好公式,之后在城市表里新增一行城市和国家,VLOOKUP 那一列会自动套用公式,直接算出对应的国家代码,不用再手动拖填充。
实操示例
场景:一张订单表只有国家名称,另一张参照表有「国家 → 国家代码」的对照,想把代码合并进订单表。
- 两份数据都转成表格
- 在订单表新增 Code 列,用 VLOOKUP 引用参照表
- 之后订单表新增任何一行,Code 都会自动算出,不用手动维护
学完你会
常见错误
- 忘记先把两份数据都转成 Table,导致公式里用的是普通单元格范围,新增行时不会自动扩展、也不会自动复制公式
- VLOOKUP 第三参数(列索引)数错了要抓的是第几列,尤其参照表列数较多时容易算错
- 第四参数漏写或写成 TRUE,本来要精确匹配却变成模糊匹配,抓到不对的代码
Sources
Blog / Website: