今天想和你分享一个超实用的Excel小技巧——如何进行多对一查询。
这在我们日常处理数据时,特别是当遇到重名情况时,简直就是救星啊!
你有一个包含员工姓名和部门的表格,现在你想通过姓名来查找员工所属的部门。
但是,如果表格中有重名的员工怎么办?
一,我们要用到Excel中的IF函数。
这个函数就它能帮助我们判断某个条件是否成立。
在这个场景中,我们的条件就是“姓名是否匹配”。
输入公式:
=IF(B2:G5=I2,A2:A5,"不是")
选择包含姓名的区域(B2:G5),并使用等号(=)与我们要查找的特定姓名“孔老三”进行比较。
如果条件找到孔老三的部门,就返回相对应的部门,否则显示“不是”。
输入公式后按回车后:
因为数组的运算是进行一对一比较,所以会出现如下的图中内容:
IF函数中使用数组(B2:G5)作为条件,判断B2:G5区域中的每个单元格是否等于I2单元格的值,并基于这个条件从数组A2:A5返回相应的值。
有关数组的运算,请看我这篇文章:
二维数组的运算
现在我们把IF函数公式改一下,把“不是”用空格代替,写“不是”我是为了让你观看直观些。
=IF(B2:G5=I2,A2:A5," ")
接下来对IF函数里的区域进行锁定:
=IF($B$2:$G$5=I2,$A$2:$A$5," ")
二、使用TEXTJOIN函数连接匹配的部门信息
由于IF函数不能直接返回区域值,我们需要使用TEXTJOIN函数来将匹配的部门信息连接起来。输入公式:
=TEXTJOIN(" ",TRUE,IF($B$2:$G$5=I2,$A$2:$A$5,""))
第一参数:空格作为分隔符,以便将多个部门信息分隔开。
第二参数:选择忽略空的单元格(TRUE),以确保结果中不包含空值。
第三参数:我们需要连接的IF函数找到的数组。
将公式向下填充到其他单元格中,以便查询其他姓名对应的部门信息。
如果有重名的员工,他们的部门信息将被一起返回。
三、总结
通过结合使用IF函数和TEXTJOIN函数,我们可以轻松地在Excel中进行多对一查询,并处理重名的情况。
评论 (0)