数据合并是指将多个报表中的字段合并到一个报表的过程,是数据处理工作中重要的一环。Excel 中常见的数据合并方法包含如下两种:
- 函数法:使用 VLOOKUP 进行查找匹配
- BI 法:使用 Power Query 合并查询进行多表合并
本节,我们先来学习 VLOOKUP 函数在数据合并中的应用吧~连载的系列文章中,小鱼将继续更新使用 Power Query 合并查询进行数据合并!
首先,我们来回顾 VLOOKUP 函数表达式:
=VLOOKUP(查找值, 查找范围, 返回序列, 查找模式)
其中,第一个参数为查找值,即根据什么去查;第二个参数为查找范围,即去哪里查;第三个参数为返回列,即返回查找范围中的第几列;第四个参数为查找模式:TRUE
1
表示模糊匹配,FALSE
0
代表精确匹配。
如图所示,左侧的订单信息表和右侧的产品信息表,使用【产品编码】字段关联。我们可以借助【产品编码】字段来完成订单表中缺失的产品信息。
一. VLOOKUP 函数精确查询
首先,在【产品名称】列的第一个单元格,录入 VL
,按 Tab
键即可补全 VLOOKUP
函数:
根据函数的提示,完成第一个参数【查找值】的录入:由于我们使用产品编码查找,因此此处录入 F2
,在向下填充时将自动引用 F3
F4
...
录入 ,
之后,紧接着函数提示我们录入参数【查找范围】,来到产品信息表,选中 B2
~E2
单元格,按 Ctrl+Shift+↓
向下选中所有数据区域。
此时查找区域为我们自动录入 产品表!B2:E21
,注意,因为我们向下填充公式时,并不希望该引用区域也随着向下移动。因此,我们需要按 F4
或者 Fn+F4
将查找区域的引用改为绝对引用 产品表!$B$2:$E$21
。
温馨提示:查找区域不能选中图中的【序号】列,VLOOKUP 查找值必须位于查找区域的第一列。
然后是第三个参数,返回列数的录入。【产品名称】位于查找区域中的第二列,因此第三个参数我们录入 2
即可。
在录入 ,
之后,函数提示我们录入最后一个参数【查找模式】,由于该参数是可选值,在省略不写时其实就是 0
,也就是这里的 FALSE
精确查找。
因此,小鱼没有录入最后一个参数,但是注意,,
是必须录入的。最后,点击 G2
单元格右下角,通过自动填充即可获取全部的产品名称啦~
二. VLOOKUP 函数多列查找
接下来,我们继续使用 VLOOKUP
函数完成产品类别和单价的填写。或许,你会想到和小鱼下面的做法一直的办法:把 G2
的公式复制到 H2
和 I2
,修改返回列数。
这样做是没问题的,但是我们需要考虑到的是,如果列数非常多的情况下,这样手动粘贴、重复未免效率太低。为此,接下来小鱼将改造 VLOOKUP
函数的现有传参,使其可以适应多列查找。
首先,对于第一个参数【查找值】,由于所有信息都是根据产品编码查找的,所有在向右填充公式时,我们希望【查找值】保持不变。按 F4
将查找值 F4
变为 $F4
,即对列使用绝对引用,对行使用相对引用。
查找范围保持不变,返回列需要录入 COLUMN()-5
即当前单元格所在列数减 5 :
拖拽 G2
单元格右下角向右填充公式:
之所以使用 COLUMN()-5
是因为,返回的列字段顺序和我们需要填充的顺序刚好是一致的。如果顺序不一致,还需要借助 MATCH
函数。
温馨提示: 【VLOOKUP+COLUMN】实现多列查询,要求查询结果的字段顺序跟源数据表的字段顺序要一致。
查询结果的字段顺序为【产品名称】【类别名称】【单价】,这和查找区域中字段的顺序是一致的。
最后,使用自动填充,完成多列数据的查找。
三. 总结
VLOOKUP 函数是最经典的查询函数,其函数表达式为 =VLOOKUPUP(查找值,查找区域,返回列数,查找模式)`,其中第二个参数和第三个参数容易出错。查找范围的首例必须是查找字段,返回列数从查找区域开始计数。
此外,对于多列查询,如果返回结果与数据源的字段顺序一致,可以通过 COLUMN 函数产生递增序列,实现多列匹配。
网友评论