Excel中一对多查找:IFERROR、VLOOKUP、MS365、FILTER函数
=IFERROR(INDEX(B:B,SMALL(IF($A$2:$A$13=$E$1,ROW($A$2:$A$13)),ROW(A1))),"")
这个对于新手真的太难了,短期学不会!所以是实战中我推荐大家使用辅助列处理,“抓到老鼠的就是好猫!”
一对多太难,我不会,但是我会1对1,所以我们添加一列辅助列,给水果分类按照出现的顺序编个号,这样就是1对1了!
上面处理完,按照出现的顺序添加了一个序号!这样我们查找的时候,也添加一列序号,就可以使用最熟悉VLOOKUP处理了!
=IFERROR(VLOOKUP($F$1&ROW(A1),A:C,3,),"")
ROW(A1)等于1,在下来的过程中会变成ROW(A2)、ROW(A3)……
对应的行号也就变成了2、3、4……,正好和我们添加的辅助列对应上!
其实我是认为这样,已经够简单了!但是实际情况,讲给新人听,还是觉得太难! 问我是否有更简单的方法,不用公式那么复杂!
于是我琢磨了一下!最近好像安装了365版本,有一个筛选函数,那应该足够简单了!
=FILTER($C$2:$C$13,$B$2:$B$13=$F$1,"")
作为新人,说是简单是简单!但是自己版本跟不上,人间真实,所以我又开启了“悟道”!最后,不得不使出新人最爱的0基础实战技能-高级筛选!
终究还是要出大招,新人满意的说:这个简单,我会!!!!
当然,也有不满意的地方,就是不能像公式那样修改分类得到想要的结果,这样就跟筛选没啥区别!于是我们应该再学一下技巧,就是把刚刚的公式录制下来,每次修改直接执行,不用反复操作!
通过录制宏,这样每次修改条件后,直接点击按钮就可以了,不用每次都做一次手工高级筛选!(此部分有系统专题教程,见文末推荐)
其实到这里,新人的问题基本就解决了!但是,我们还是拓展一下,如果查找的结果是数值,那么这个问题,还可以使用数据透视表来处理,更简单!当然不是说文本就不行,这是需要Power Pivot来处理而已!
对应的方案还有很多很多,比如PQ的M,PP的DAX都是可以处理!这里就不给大家过多的阅读负担,点到为止!如果你能掌握其中的一两种,那么我想一对多再也不是什么难题!
THE END