一对多查询,Vlookup,Filter,Textjoin公式,你喜欢哪种

yumo6664个月前 (05-18)技术文章52

举个工作中的例子,左边的数据是公司员工各部门的名单数据,现在我们需要根据部门,把所有员工姓名查找出来,这就是一对多查询问题

今天我们分享3种方法来解决,分别用到的公式是VLOOKUP,FLITER,TEXTJOIN公式

方法一:使用Vlookup公式

使用vlookup公式前,我们需要建立一个辅助列,我们在部门前插入一列,然后输入的公式是:

=B2&COUNTIFS($B$2:B2,B2)

运用的是累计计数原理,分别连接了各个部门出现的第几次

那我们需要查找出各个部门的员工信息,则需使用公式:

=VLOOKUP($E2&COLUMN(A1),$A:$C,3,0)

Column函数返回单元格值的列标,向右填充时,会自动的变成1,2,3,4

最后我们为了屏蔽错误值,会加上IFNA公式:

=IFNA(VLOOKUP($E2&COLUMN(A1),$A:$C,3,0),"")

方法二:使用FILTER公式

Filter是个筛选函数,类似于筛选的用法,当我们输入公式:

=FILTER(B:B,A:A=D2)

表示返回B列的结果,筛选范围是A列,筛选值是D2,通过溢出功能,得到的结果是一个纵向的数组

那我们需要对数组进行转置一下,则输入的公式是:

=TRANSPOSE(FILTER(B:B,A:A=D2))

向下填充,得到了所有的结果,无须辅助列,也无需嵌套IFERROR公式就得到了结果

方法三:使用Textjoin公式

以上的员工结果都是在多个单元格中显示的,如果我们想把所有员工在一个单元格中显示,并且用顿号分开,则我们只需要一个公式搞定:

=TEXTJOIN("、",TRUE,IF(A:A=D2,B:B,""))

第一个参数表示分隔符号,这里我们用的顿号

第二个参数表示,是否忽略空白值,这里用的TRUE,进行忽略

第三个参数表示哪些文本需要连接,因为这里是分部门的,所以我们用IF来判断,保留了对应部门的员工姓名,从而进行了连接

关于上面3个公式,你都学会了么,更喜欢用哪种?

相关文章

一文搞懂 Excel COLUMN 函数,工作效率翻倍

大家在日常使用 Excel 时,难免会碰上需要跟列号打交道的情况,这个时候,COLUMN 函数就能大显身手啦!别看它名字简单,作用可不小。今天就来给大家唠唠,怎么用好这个函数,让你的数据处理工作轻松不...

Vlookup+Column公式组合,强强联手,你会么?

Vlookup公式在日常工作中,天天用到,搭配column函数公式,如虎添翼的加强,今天分享2个自由搭配的技巧1、Vlookup不想数结果列在第几列工作中,表格经常是字段特别多,然后我们需要查找匹配的...

获取列号函数COLUMN的应用技巧

COLUMN函数属于Excel表格中查找与引用类别函数,作用获取给定给定字段或引用单元格的列号。COLUMN函数属性:语法结构COLUMN([referencel])中文表达式COLUMN(参照区域)...

Excel中AVERAGE函数,COLUMN函数的使用方法介绍

Excel函数AVERAGE的主要功能就是计算出所有参数的算术平均值。这些函数虽然不是很常见,但是使用起来可以解决实际工作中的问题,提高工作做效率,节省工作时间。Excel函数AVERAGE中参数的具...

ROW函数太强大了!居然能生成6类序号,再也不用复制粘贴了

今天跟大家分享一个非常好用的函数——ROW,它自动生成各种各样的序号,满足工作中的各类需求,再也不用一个一个的手动拖动了!一、ROW函数ROW:返回引用单元格的行号语法:=ROW([reference...

Excel工作表中的Vlookup,它才是No1,查询之王

查询引用也是数据分析中常用的操作之一,如果要在Excel中查询引用,则必须掌握Vlookup函数,它才是Excel工作表函数的No1,查询之王!一、功能及语法结构。功能:根据指定的查询条件和区域,返...