Excel多对多查询,这个TEXTJOIN函数高级用法真的是太牛了!
我们在使用WPS处理Excel数据是会遇到各种查找数据的需求,就如下图所示,我们需要在左侧的表格中找出【业务部、运营部、财务部】所对应的员工名称,把这些名称在右侧表格中统计出来,并且每个员工名称之间用逗号隔开,如下图所示。遇到这种多对多查询问题,我们可以使用Textjoin函数,用这个函数处理这类问题真是太方便了。
一、TEXTJOIN函数介绍
公式=TEXTJOIN(分隔符, 忽略空白单元格, 字符串1…)
分隔符:文本字符串,或者为空,或用双引号引起来的一个或多个字符,或对有效文本字符串的引用。如果提供一个数字,则将被视为文本。
忽略空白单元格:如果为 TRUE,则忽略空白单元格,如果是False,则不忽略空值。
字符串1…:为 1 到 253 个要联接的文本项。这些文本项可以是文本字符串或字符串数组,如单元格区域。
其实TEXTJOIN函数用法比较简单,比如下图要把两个城市名称连到一块并且用逗号隔开
只需使用公式:=TEXTJOIN(",",TRUE,E6:F6)
第一参数是连接符逗号,第二参数一般都【TRUE】表示忽略空值,第三参数就是需要链接的数据区域,就是这么简单。
二、TEXTJOIN函数高级用法-多对多查询
大家对TEXTJOIN函数第一印象应该是觉得是强大的合并文本函数,其实我们可以借助IF函数,实现开头提到的多对多查询功能。
想要实现开头提到的功能,我们需要借助IF函数,先使用IF函数从左侧表格中找到【业务部、运营部、财务部】对应的所有员工名称,然后将其放在TEXTJOIN的第三参数中即可。
公式:=TEXTJOIN(",",TRUE,IF(A2:$A$10=D2,B2:$B$10,""))
其实,这个公式的关键就是IF函数,通过IF函数判断所属部门,如果条件成立就返回对应的员工名称,如果条件不成立就返回空值
IF公式:IF(A2:$A$10=D2,B2:$B$10,"")
特别注意事项:
1、IF函数中的判断条件和返回真值引用的单元格都是要决定引用,就是选择单元格后按一次F4键。
2、在WPS中输入公式后,一定要按Ctrl+Shift+回车键才可以,如果只按回车键会返回所有的员工名称。我们可以看到这个公式跟以往的公式有所不同,公式外面有{},这个可不是手工写的,而是输入公式后,按Ctrl+Shift+Enter三个组合键结束,这就是传说中的数组公式。