一对多的查找匹配函数(一对多匹配函数怎么用)
小伙伴们好啊,前几天给大家分享了一期关于数据查询的经典数组公式一对多、多对多查询经典公式
。
今天老祝和就和大家分享一组特别简单的方法,也能实现一对多、多对多的数据查询需要。
先看数据,是一份各部门的员工信息表:
咱们首先要完成的是:
一对多查询
一对多查询,就是符合条件的有多个结果。本例中,咱们要根据G2单元格指定的部门,提取出所有财务部的人员信息。
步骤1
在D2单元格输入以下公式,向下拖动复制公式:
=在D列首次出现的位置,查询结果为2。
公式向下复制时,会依次查询1、2、3……在D列首次出现的位置。
得到位置信息了,接下来再使用INDEX函数在A列返回对应位置的内容:
INDEX(A:A,MATCH(ROW(A1),$D:$D,0))
当公式一直向下复制时,增加的序号在D列找不到了,公式会返回错误值,所以在最外层加上IFERROR函数,将错误值转换为空文本""。
接下来咱们再看看如何实现:
多对多查询,就是根据多个条件返回多个指定条件的内容。接下来要根据G2单元格指定的部门和G3单元格指定的性别,提取出所有财务部的女性人员信息。
咱们只要简单修改一下D2单元格的公式就可以了,F列的原有的公式不用管它:
=(A2=G$2)*(C2=G$3)+D1
看出门道了吗?多个条件同时符合,就是条件1*条件2。
多个条件符合其一
现在更进一步,要根据G2和G3单元格指定的部门,提取出两个部门的所有记录。
同样,只要简单修改一下D2单元格的公式就可以了,F列的原有的公式不用管它:
=(A2=G$2)+(A2=G$3)+D1
看出门道了吗?多个条件符合其一,就是条件1+条件2。
多个条件混合
现在再深入一步,要根据G1~G3单元格指定的条件,提取出财务部女性的记录以及安监部的所有记录。
仍然只要简单修改一下D2单元格的公式就可以了,F列的原有的公式不用管它:
=(A2=G$1)*(C2=G$2)+(A2=G$3)+D1
看出门道了吗?要同时符合的多组条件就用乘法,对符合其一的条件就用加法。
好了,今天的分享就是这些吧,最后留给大家一个小问题:如果要提取财务部女性和销售部女性的所有记录,D2单元格的公式要如何修改呢?