vlookup多项匹配_VLOOKUP函数⼀对多查,掌握⽅法后就
是这么简单
如果查区域中有多个查对象,⽤VLOOKUP函数查时,只返回该列中⾃上⽽下第⼀个查对象所对应的值。
如下图,我们要查“总经办”有哪⼏个⼈员?
如果直接⽤VLOOKUP进⾏查,返回的结果为“⾼磊”,它是“姓名”列中⾃上⽽下的第⼀个结果,向下拖动公式返回的是同⼀个结果。
那么我们要查某个部门有哪⼏位员⼯应该如何操作呢?作为熟练掌握EXCEL的⼈员来说,能想到多个⽅法。今天我们来讲的是⽤VLOOKUP函数实现⼀对多查,这个不仅仅是VLOOKUP函数的⼀种⽤法,更是在解题过程中可以学到⼀些解题思路,对其它问题的解决也有帮助。
思考:
⽤VLOOKUP查时,只返回⾃上⽽下第1个值的内容,那么我们是不是可以把部门名称都变为唯⼀值,这样VLOOKUP查时,可以返回每个唯⼀值所对应的值呢?
再来考虑⼀下,我们在F3单元格输⼊公式后向下拖动,⾏号是递增1的,那么是不是就可以把部门名称改为“总经办1、总经办2……”,这样依次对应第1个、第2个……出现的姓名呢?
⽣成唯⼀值
我们⽤这种试⼀下,要显⽰某个⼈名在部门中是第⼏次出现,可以⽤COUNTIF来解决。
在“部门”列前⾯插⼊⼀个辅助列,在A2单元格中输⼊公式:=COUNTIF($B$2:B2,B2)
column函数和vlookup函数双击向下填充。
我们会发现,同⼀个部门每出现⼀个姓名,对应的辅助列单元格中数字序号就加1,这样我们和部门名称⽤⽂本连接符“&”连接起来后,就会形成唯⼀值。
把A2单元格公式修改为:=B2&COUNTIF($B$2:B2,B2)
双击向下填充公式。
⽣成⼀对多查公式
唯⼀值⽣成了,我们可以把查公式修改⼀下:=VLOOKUP($F$3&ROW(A1),$A$1:$C$9,3,0)
双击向下填充。
ROW(A1)是返回A1单元格所在的⾏号(1),向下拖动的话,依次变为ROW(A2)、ROW(A3)……,形成数字序列1、2、3……,总经办和数字序列连接后,变成“总经办1、总经办2、总经办3……”,这样通过查A列的值,来返回姓名列的姓名。
将错误值返回空值
因为我们不能确定某个部门有多少⼈,所以需要把公式尽量向下拖动,直到返回错误值为⽌,是⼀但更换查部门,可能还会出现更多的错误值。
我们通过IFERROR让错误值返回空值:=IFERROR(VLOOKUP($F$3&ROW(A1),$A$1:$C$9,3,0),"")
双击向下填充。
这样就可以⽤VLOOKUP实现⼀对多查,我们可以把F3单元格设置为下拉菜单,选择不同部门时,返回这个部门所有⼈员姓名。
⽤VLOOKUP函数⼀对多查,有两点操作:⼀是插⼊辅助列,通过COUNTIF函数将多项相同内容⽣成唯⼀值。
⼆是⽤VLOOKUP查时,查值要连接⽣成的序列,如果将内容⽣成在列中,⽤ROW来⽣成序列,如果将内容⽣成在⾏中,⽤COLUMN来⽣成序列。
免责申明:本栏⽬所发资料信息部分来⾃⽹络,仅供⼤家学习、交流。我们尊重原创作者和单位,⽀持正版。若本⽂侵犯了您的权益,请直接点击提交,⽴刻删除!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论