Vlookup函数查找数据很方便,但很多新函数,如fitler、xlookup,甚至textjoin都比它好用,难道Vlookup要被淘汰了吗?No! No! 它还一个绝妙的功能,就是隔多列取数。
Vlookup有4个参数,其中第3个参数是返回值所在的列数。正常情况下只需要返回一个值,所以常用一个整数。
=VLOOKUP(G2,B:E,4,0)
很多人不知道的是,如果第3个参数是一个组数,就可以返回多列值。
=VLOOKUP(A11,A1:E7,{2,3,5},0)
注: 非WPS和Office365版本需要按三键(ctrl shift enter) 输入公式
利用这个特点可以解决工作中常见的隔列取值问题。比如最常遇到的查找后的隔列求和
【例】如下图所示,要求根据下表的姓名,从上表中查找并隔列对实际、计划求和。
分析:估计很多同学首先想到Sumif函数,但这是一个多列求和而且要先分产品。如果非要用它,公式为:
=SUMIF(B2:Y2,B2,OFFSET(B2:Y2,MATCH(A14,A3:A10,0),0))
或:
=SUM(SUMIF(A:A,AA2,OFFSET(A:A,,ROW(1:12)*2-1)))
用Sumproduct函数公式会简单些,但数据量大了会很卡。
=SUMPRODUCT((A3:A10=A14)*(B2:Y2=B13)*B3:Y10)
其他函数都不理想,换作Vlookup怎么样?嘿嘿,很简单!
=SUM(VLOOKUP(A14,A:Y,ROW($1:$12)*2,0))
用Vlookup查找并隔列取值,用Sum求和就可以了,其中row(1:12)生成1,2,3,4....12序号*2就变成了2,4,6...24用来取实际列的数字。
兰色说:其实很多函数的参数都可以把一个数换成一组数,用来批量运算。
领取专属 10元无门槛券
私享最新 技术干货