易错题快收藏,VLOOKUP查询同一姓名所有记录,公式这样写

发布于 2021-09-15 23:57


今日目标:

VLOOKUP多条件查找的用法

前两天,有位学员问了一个VLOOKUP多记录查询的问题。

想要返回某个姓名所有的销售额数据。

但是公式结果却是错误的,公式是这样的:

=VLOOKUP(R2&ROW(M1),$L:$O,COLUMN(O1),0)

你能找出来,她的工作中哪里做错了吗?

1- VLOOKUP基础

VLOOKUP函数,是新手学习函数时,当中最容易出错的一个。

1- 一方面,它的参数非常多,容易记混。

2- 另一方面,每个参数的类型和作用,也都各不相同。

这就让VLOOKUP函数的记忆点变的特别的多,不可见的隐性信息也很多,所以极其容易出错。

我再给大家梳理一下VLOOKUP函数的用法。

参数1

VLOOKUP的参数1,是一个单个的数值,也就是要查到的值。

记住,这是一个值,所以只能选择一个单元格。

这个参数常见的错误,是选择了多个区域,或者一整列。如下:

=VLOOKUP(F2:F11,$A$1:$D$11,2,0)

参数2

第2个参数是一个区域,而不是单独的值,所以选择的时候,一定是包含2列以上的数据。

这个参数有很多的记忆点。

1- 这两列,分别是查找列,而返回列。

2- 查找列,一定要在选区的第1列

3- 返回列,一定要在查找列的右侧。

4- VLOOKUP只能查找到,第1个符合条件的值,其他重复的值找不到。

任何不满足以上条件的选取,都有可能导致VLOOKUP函数的错误。

下面的数据,就是因为年龄在姓名的左边,所以VLOOKUP查找错误了。

参数3

第3个参数,是指的返回列。它有两个记忆点:

1- 这个参数是一个数值。

2- 是返回列相对于查找列,偏移的列数。

3- 这是一个相对的位置,在参数2里的区域,查找列是第1列,返回列则是从左往右数,对应的列数。

所以,在数这个列数的时候,一定不要从A列开始数,除非A列是查找列。

参数4

最后一个参数,代表的是匹配的模式有两种形式:

1- 写0,表示精确匹配。

2- 写1,表示模糊匹配。

不过这个模糊指的是数字的模糊匹配,而不是文本是否包含某个字符的模糊匹配。

2- 多记录查找的问题

梳理完了VLOOKUP函数的用法,再来看开头的问题,原因就不难找了。

1- 查询列,姓名不唯一

查询值当中姓名不唯一,所以需要添加辅助列,借助COUNTIF函数,来统计姓名的次数,构造出唯一的姓名。

公式如下:

=R2&COUNTIF($R$2:R2,R2)

这样每个姓名就有了唯一性,可以使用VLOOKUP来正确的查询。

2- 返回列错误

从截图来看,【销售额】在查找区域中是第4列,但是公式中使用的第COLUMN(O1)公式,即15,显然超出了查找区域的列数。

=VLOOKUP(R2&ROW(M1),$L:$O,COLUMN(O1),0)

所以,把参数3直接改成4就可以了。

最后,使用VLOOKUP,基于Q列的辅助列姓名来查询,就可以准确的查询出所有的记录了。

公式如下:

=VLOOKUP(Q2,$L:$O,4,0)

你可以下载这个案例来动手实际操作演示一下。

总结

函数公式不好学,就是因为函数公式背后的隐性信息太多了。

通过理解每个参数的类型、以及具体的含义,把隐性信息变成显性信息,公式就变的很简单了!

说人话就是:熟能生巧,勤学苦练。

下载案例文件

后台回复知识星球,免费下载星球文章目录,了解更多详细介绍。

我是拉小登,一个爱梳头的Excel老师

这对我很重要,能给拉小登更多动力,持续分享优质的内容。

本文来自网络或网友投稿,如有侵犯您的权益,请发邮件至:aisoutu@outlook.com 我们将第一时间删除。

相关素材