您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 南京分类信息网,免费分类信息发布

Excel一对多万能查询公式index+small+if,理清思路就会了!

2019/6/16 5:06:21发布107次查看
工作中vlookup函数更多用于一对一的查询,如果碰到了一对多的情况,经常会看到使用index+small+if函数公式例如左右是基础信息,然后我们列出一个部门,需要把部门成员全部找出来,则可以使用这个一对多的万金没公式:
=index(a:a,small(if($c$1:$c$6=$f$2,row($c$1:$c$6),2^10),row(a1)))&
输入完公式按ctrl+shift+enter三键进行计算
很多文章中都出现了这个公式,但很少有解释为什么这么用的,我们来进行思路理解
首先我们查找的是市场部,所以首先组成一个数组,得到所有是市场部的列序号
使用公式一:$c$1:$c$6=$f$2,得到的结果是:
然后我们要保留得到true的结果,false的结果让它变得无限大,我们这里使用的2的10次方,也就是1024,当然可以修改的更大,比如2的100次方
使用if(公式一,row($c$1:$c$6),2)
然后使用small函数,找到第1小的数字,第2小的数字,第3小的数字....以此类推
最后用index函数,根据这些得到的索引序列号2,4,6,我们要得到的结果是姓名的话,也就是找到a列的第2个,第4个,第6个...就是我们的结果:
a列的第1024个数字为空,所以显示成了0
最后用&,让这些数字0不显示出来,就得到了最后我们需要的结果:
所以这个万金油公式,你理解了么?
如果我们用index+large+if也可以进行求解:
=iferror(index(a:a,large(if($c$1:$c$6=$a$10,row($c$1:$c$6),-1000),row(a1))),)
它的求解是从下向上的求出所有结果。
所以你学会了么?欢迎留言讨论~

南京分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录