SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询

多条件查询一直是困扰EXCEL使用者的难题之一 , 今天就把经常用于多条件查找的DGET、SUMIFS、SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP六个函数综合解 。
示例数据:

SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询

文章插图
查询仓库二键盘的销量 。
关键步骤提示
第一种:DGET函数
在G2单元格输入公式:“=DGET(A1:C13,C1,E1:F2)”
DGET(构成列表或数据库的单元格区域, 结果数据的列标签, 指定条件的单元格区域);
在本题中的解释:
=DGET(数据库,销量列标签,条件区域) 。
SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询

文章插图
第二种:SUMIFS函数
在G5单元格输入公式:“=SUMIFS(C2:C13,A2:A13,E5,B2:B13,F5)”
第三种:SUMPRODUCT函数
在G8单元格输入公式:“=SUMPRODUCT((A2:A13=E8)*(B2:B13=F8)*C2:C13)”其中 , 各个数组返回值:
SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询

文章插图
三个数组对应位置数据乘积求和 。
注意:SUMPRODUCT函数只能用于查询“数值”单元格 。
第四种:LOOKUP函数
在G11单元格输入公式:“=LOOKUP(1,0/((A2:A13=E11)*(B2:B13=F11)),C2:C13)”
SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询

文章插图
注意要点:
LOOKUP函数用“二分法”进行查找 。
返回小于等于lookup_value(查找值)的最大值 。
【SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询】Lookup_vector(查找区域)中如果有“错误值“ , 那么LOOKUP函数在查找时将会忽略错误值 。
“=LOOKUP(1,0/((A2:A13=E11)*(B2:B13=F11)),C2:C13)”
在 {#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!}里查找1 , 忽略错误值 , 结果返回0对应位置的C2:C13中的数据 。
第五种:OFFSET函数
在G14单元格输入公式:“=OFFSET(C1,MATCH(E14&F14,A2:A13&B2:B13,0),)”
本公式的含义是:以C1为基准 , 公式向下偏移MATCH(E14&F14,A2:A13&B2:B13,0)行 。
其中E14&F14和A2:A13&B2:B13分别对应的结果:
SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询

文章插图
公式结束时需按“CTRL+SHIFT+ENTER”组合键 。
第六种:VLOOKUP函数
在G14单元格输入公式:“=VLOOKUP(E17&F17,IF({1,0},A2:A13&B2:B13,C2:C13),2,0)”
其中“IF({1,0},A2:A13&B2:B13,C2:C13)”是生成一新的数据区域:
SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询

文章插图
“=VLOOKUP(E17&F17,IF({1,0},A2:A13&B2:B13,C2:C13),2,0)”是指在新的区域中精确匹配第2列的数值 。
公式结束时需按“CTRL+SHIFT+ENTER”组合键 。
最终结果:
SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询

文章插图

    推荐阅读