想通过不同的查询方式来拓宽思路,谢谢。
你好,朋友你提出的问题我这里稍做演示,详见下文。
说明:所有注明数组公式的请以CTRL+SHIFT+ENTER三键同时结束公式。
第1种:SUM函数 数组公式
=SUM((A3:A7=E3)*(B3:B7=F3)*C3:C7)第2种:SUM+IF函数 数组公式
=SUM(IF(A3:A7=E3,IF(B3:B7=F3,C3:C7),0),0)第3种:SUMPRODUCT函数 普通公式
=SUMPRODUCT((A3:A7=E3)*(B3:B7=F3)*C3:C7)第4种:MAX函数 数组公式
=MAX((A3:A7=E3)*(B3:B7=F3)*C3:C7)第5种:LARGE函数 数组公式
=LARGE((A3:A7=E3)*(B3:B7=F3)*C3:C7)第6种:MIN+IF函数 数组公式
=MIN(IF((A3:A7=E3)*(B3:B7=F3),C3:C7)))第7种:MIN+TEXT函数 数组公式
=MIN(--TEXT((E3=A3:A7)*(F3=B3:B7)*C3:C7,"0;;9999"))=MIN(((E3=A3:A7)*(F3=B3:B7)*C3:C7)+9^9*NOT(((E3=A3:A7)*(F3=B3:B7)*C3:C7))
第8种:SMALL函数 数组公式
=SMALL(--TEXT((E3=A3:A7)*(F3=B3:B7)*C3:C7,"0;;9999"))第9种:INDEX+MATCH函数组合 数组公式
=INDEX(C3:C7,MATCH(E3&F3,A3:A7&B3:B7,0))=INDEX(C3:C7,MATCH(1,(E3=A3:A7)*(F3=B3:B7),0))
第10种:OFFSET+MATCH函数 数组公式
=OFFSET(C2,MATCH(E3&F3,A3:A7&B3:B7,0),)第11种:INDIRECT+MATCH函数 数组公式
=INDIRECT("C"&MATCH(E3&F3,A1:A7&B1:B7,0))第12种:VLOOKUP+CHOOSE函数 数组公式
=VLOOKUP(E3&F3,CHOOSE({1,2},A3:A7&B3:B7,B3:C7),2,0)第13种:HLOOKUP+TRANSPOSE+CHOOSE函数 数组公式
=HLOOKUP(E3&F3,TRANSPOSE(CHOOSE({1,2},A3:A7&B3:B7,B3:C7)),2,0)第14种:VLOOKUP+IF函数 数组公式
=VLOOKUP(E3&F3,IF({1,0},A3:A7&B3:B7,B3:C7),2,0)第15种:LOOKUP函数 普通公式
=LOOKUP(E3&F3,A3:A7&B3:B7,C3:C7)=LOOKUP(1,0/((A3:A7=A9)*(B3:B7=B9)),C3:C7)
=LOOKUP(1,0/((A3:A7&B3:B7)=(E3&F3)),C3:C7)
=LOOKUP(1,1/(((A3:A7=A9)+(B3:B7=B9))=2),C3:C7)
第16种:SUMIFS函数 普通公式
=SUMIFS(C3:C7,A3:A7,E3,B3:B7,F3)第17种:AVERAGEIFS函数 普通公式
=AVERAGEIFS(C3:C7,A3:A7,E3,B3:B7,F3)第18种:数据库函数 普通公式
=DSUM(A2:C7,3,E2:F3)=DGET(A2:C7,3,E2:F3)
=DAVERAGE(A2:C7,3,E2:F3)
=DMAX(A2:C7,3,E2:F3)
=DMIN(A2:C7,3,E2:F3)
=DPRODUCT(A2:C7,3,E2:F3)
小结:多条件查询均可以用{数组=X}*{数组=X}*{...}这种方式扩展,希望以上公式能为你以及其它的爱好者提供一点思路。公式只是部分,希望众EXCEL爱好者能拓宽思路,附件以上。
参考书籍
《Excel应用大全》
参考学习资料来源
方法步骤:
以下图为一个超市的销售数据:
方法一、INDEX、SUMPRODUCT和ROW函数的组合
在单元格F4中输入如下公式
=INDEX(B2:B15,SUMPRODUCT((A2:A15=F3)*(D2:D15=F5)*ROW(C2:C15)),0)
即用SUMPRODUCT函数求出满足条件所对应的行数,再用INDEX函数查出满足条件对应的值。结果如下:
方法二、LOOKUP函数的应用
在单元格F4中输入如下函数式:
=LOOKUP(2,1/(A2:A15=F3)/(C2:C15=F5),(B2:B15))
即可得到同方法二相同效果。如果没有符合条件的值,则会返回#N/A错误。
33-Excel中Vlookup多条件查询(每日分享,敬请关注)
利用插入辅助列,通过VLOOKUP函数实现多条件查询匹配数据。