Vlookup真的不是万能,毕竟都2023年了,新函数层出不穷,今天我们就来解决一个Excel中查找难题,相信很多人都遇到过。也是一个粉丝问到的问题
如下图,我们想要在左侧的表格中找到【1班与2班】对应的所有名字,并且把它们都放在1个单元格中,每个姓名与逗号隔开。
相信很多人的第一反应就是用Vlookup,但是它真的做不了。跟大家分享一个新的函数
一、TEXTJOIN函数
TEXTJOIN:它是一个数据链接函数,作用是使用分隔符将数据链接在一起
语法:=TEXTJOIN(分隔符, ignore_empty, text1, [text2], …)
第一参数:分隔符
第二参数:是否忽略空单元格,true代表忽略空值,false则不忽略空值
第三参数:要链接的本文
第四参数:要链接的文本
以此类推,最多可以设置252个需要链接的文本
用法很简单,如上图,我们想要使用逗号将【你】,【我】这两个字链接在一起
公式:=TEXTJOIN(",",TRUE,C3:D3)
第一参数是连接符逗号,第二参数一般都【TRUE】表示忽略空值,第三参数就是需要链接的数据区域
二、查询
想要实现上文提到的效果,我们还需要借助IF函数,先使用IF函数找到1班或者2班对应的所有名称,然后将其放在TEXTJOIN的第三参数中即可。
公式:=TEXTJOIN(",",TRUE,IF($B$2:$B$16=E6,$C$2:$C$16,""))
在这里关键就是IF函数,它的作用是判断班级是不是等于1班,如果条件成立就返回班级对应的名字,如果条件不成立就返回空值
公式:IF($B$2:$B$16=E6,$C$2:$C$16,"")
以上就是今天分享的全部内容了,这个案例,它有指定的名称:合并同类项,也有人把它称之为【多对多查询】本质都是一样的,解决方法都是这一个
我是Excel从零到一,关注我,持续分享更多Excel技巧!
热门跟贴