不知道上次那位我推荐TEXTJOIN实现满足条件多个值合并到一起,非要使用VLOOKUP的同学,今天能否看到……
今天我们就索性,说说那些VLOOKUP奇奇怪怪的用法,请打开脑洞……
友情提醒:演示版本O365,其他版本数组公式,请“Ctrl+Shift+Enter”录入!
01 | 条件求和
求:三个人的成绩合计!
=SUM(VLOOKUP(T(IF({1},D2:D4)),$A$2:$B$12,2,))
是不是第一个就不知道为啥用VLOOKUP?SUMIF不香吗?
=SUM(SUMIF($A$2:$A$12,$D$2:$D$4,$B$2:$B$12))
值得说的是,在O365版本,VLOOKUP第一参数做了优化,已经支持区域!所以在365版本中,直接写,比较好理解!
02 | 满足条件多个结果合并
我们从重置版VLOOKUP系统教程,抽取一下这个案例!
我们需要分两步处理:
第一步:添加辅助列
我们利用迭代的原理,把同一个学生的多个科目,依次迭代合并!
公式的意思是用当前值拼接上,从下面结果中查找到的内容,这个就是迭代后面查询到的内容,有点绕,直接思考一下!
=E4&IFERROR('、'&VLOOKUP(C4,C5:$F$14,4,0),'')
第二步:使用VLOOKUP查询辅助列结果
=VLOOKUP(C16,$C$3:$F$13,4,)
你说VLOOKUP能不能实现?也能,只是总感觉有点那什么……
=TEXTJOIN(',',,IF($C$4:$C$13=$C16,$E$4:$E$13,''))
不要说什么,我不用365用不了呀!WPS已经支持TEXTJOIN,办公室使用WPS同学太多了,正好!
03 | 多条件合并单元格查询?
=VLOOKUP(H4,OFFSET($D$3,MATCH($G4,$C$4:$C$14,),):$E$14,2,)
你就说吧,VLOOKUP是不是要上天,你们这么玩VLOOKUP!还是好好规范数据源吧,别什么都强,简单问题复杂化,如果数据源规范,我们压根不需要太复杂的嵌套即可轻松解决问题!
上面公式涉及到的知识点有点多,比如你要知道OFFSET结果是一个引用!所以我们才可以 OFFSET:单元格! MATCH找到部门的位置,构建从部门开始位置到结果的区域,这样就可以确保我们查找的首个结果就是对应部门的数据!
以上都是VLOOKUP一些奇奇怪怪的用法,实际一般不推荐,现在有更多更优的选择,不必非在VLOOKUP函数一个树上吊死,换棵树,换棵树……
联系客服