分享

[转载]Excel多条件查找

 网海漫步 2015-03-18

Excel多条件查找

在Excel中,如果根据某一个条件,查找表中的值,这是一件较为容易的事情,MATCH()、INDEX()、LOOKUP()、VLOOKUP()、HLOOKUP()等函数均可较为容易的实现。但如果要进行满足多条件查找,则是一件不容易的事情,这里通过两个条件查找为例,解析在Excel中多条件查找的方法。下图为一个超市的销售数据:

[转载]Excel多条件查找

现老总想了解张飞同志买了多少瓶啤酒,显然,这里要查找的条件有两个,一,购买者为张飞,二购买的产品为啤酒,那么我们想在F5单元格中获得对应的购买量。

方法一、SUMPRODUCT()函数的应用

在单元格F5中输入:

=SUMPRODUCT((A2:A15=F3)*(B2:B15=F4)*(C2:C15))

即在A2:A15中查找满足F3的姓名,在B2:B5中查找F4单元格中的产品名,同时满足这两个条件后,在C2:C15中找出对应的购买量。然后回车,得到的效果如下:

[转载]Excel多条件查找
这样在单元格F5中就返回张飞在该超市中所够啤酒的瓶数,20瓶。现在,我们把B5中的黄酒改成啤酒,就会有如下结果:[转载]Excel多条件查找
此时,张飞购买的啤酒瓶数变为25,即对张飞两次购买啤酒的瓶数进行了求和。我们很容易发现,该方法对满足条件的单一数值,直接返回结果,而当有多个结果时,先对这多个结果进行求和,然后再返回和的值。

当然,该函数也有一个不足的地方,就是当要查找的值为数字以外的数值类型时,就只能返回0,而不是正确的结果。

[转载]Excel多条件查找
如果此时该超市的老总想知道张飞购买量为两个单位的产品是什么的时候,用公式:

=SUMPRODUCT((A2:A15=F3)*(B2:B15=F5)*(C2:C15))

出现的结果就是F4中的0,而不是想要的产品名——红酒。要进行该查询,我们可以用如下方法。

方法二、INDEX、SUMPRODUCT和ROW函数的组合

在单元格F4中输入如下公式

=INDEX(B2:B15,SUMPRODUCT((A2:A15=F3)*(D2:D15=F5)*ROW(C2:C15)),0)

即用SUMPRODUCT函数求出满足条件所对应的行数,再用INDEX函数查出满足条件对应的值。结果如下:[转载]Excel多条件查找

方法三、LOOKUP函数的应用

在单元格F4中输入如下函数式:

=LOOKUP(2,1/(A2:A15=F3)/(C2:C15=F5),(B2:B15))

即可得到同方法二相同效果。如果没有符合条件的值,则会返回#N/A错误。

[转载]Excel多条件查找
方法四、数组法

在单元格F4中输入

{=INDEX(B2:B15,MATCH(1,(A2:A15=F3)*(C2:C15=F5),0))}

注意大括号是不需要输入,由于是数组,所以不能直接按回车获得结果,需要按Ctr+Shift+Enter方可获得结果。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多