一、函数特性
当利用vlookup查找数据,碰着重复值的时候,函数仅仅会返回第一个找到的结果,这个特性不仅仅适用于vlookup,其它我们常用的查找函数也遵照这个特性,这个是Excel默认的规则,无法变动。这个便是vlookup碰着重复值,只能返回一个结果的缘故原由。
如下图所示,我们将查找值设置为2班,然后利用vlookup函数来查找班级对应的姓名,得到的结果是成吉思汗,返回这个结果的缘故原由便是由于成吉思汗在2班的第一个位置。以是我们想要利用vlookup函数实现一对多查询,就必须要构建一个不重复的查找值,这个查找值,我们可以利用countif函数来构建
二、构建赞助列
首先我们在数据最前面插入一列空缺列,随后将公式设置为:=COUNTIF($B$2:B2,$G$2)然后向下填充公式,在2班的这里它的结果是从1开始的序列。这个从1开始序号便是唯一的值,可以将其作为查找值。跟大家大略讲解下这个公式

公式: =COUNTIF($B$2:B2,$G$2),COUNTIF的浸染是条件计数。
第一参数:$B$2:B2,计数的数据区域
第二参数:$G$2,计数条件,查找的班级
这个函数的关键点在第一参数计数的数据区域,在这里第一个B2加了$符号就代表绝对引用,向下拖动数据的时候它是不会发生变革的,而第二个B2没有加$符号就代表相对引用,向下拖动数据的时候它是会发生变革的,也便是说数据区域是一个单元格,一个单元格的增加的,以是才会涌现分组计数的效果。
三、实现一对多查询上一步中我们通过利用countif为每个班级都构建了一列从1开始的序列,这个序列就可以作为查找值来利用,由于它是不重复的,我们可以将ROW(A1)作为vlookup的查找值,由于它的结果也是从1开始的序列,这个是时候我们可以将公式设置为:=VLOOKUP(ROW(A1),$A$1:$D$16,3,0)向下添补即可,这个函数非常大略,便是一个vlookup的常规用法,不过在这里查找值变为了ROW(A1)。如下图所示
末了我们创造下方会有缺点值涌现,涌现缺点值的缘故原由是由于,已经查找到了所有数据公式拉多了,这个时候我们可以利用IFERROR函数来屏蔽下缺点值,终极的公式为:=IFERROR(VLOOKUP(ROW(A1),$A$1:$D$16,3,0),"")至此就设置完毕了,我们就可以利用一次vlookup来返回多个结果了
以上便是本日禀享的全部内容,怎么样?你学会了吗?
我是Excel从零到一,关注我,持续分享跟多Excel技巧