本文在文章主体部分讲解如何根据多个条件求最大值,在文章结尾处给出根据多个条件求最小值的公式。
只要理解了如何根据多个条件取最大值,也自然明白如何根据多个条件取最小值。
一、案例
如下图所示,A1:D11为不同供货单位不同产品价格表。要求获得供货单位“AAA”提供的产品“品1”的最高价格。
二、计算步骤
在单元格H2输入公式
=MAX(IF(($A$2:$A$11=F2)*($C$2:$C$11=G2),$D$2:$D$11))
按Ctrl+Shift+Enter结束公式输入。
公式解析:
(1)$A$2:$A$11=F2用于确定是否满足条件:供货单位为“AAA”,返回的结果为
{TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;TRUE;FALSE;TRUE;FALSE}
(2)$C$2:$C$11=G2用于确定是否满足条件:产品名称为“品1”,返回结果为
{TRUE;FALSE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE}
(3)($A$2:$A$11=F2)*($C$2:$C$11=G2)用于确定是否同时满足条件:供货单位为“AAA”且产品名称为“品1”。只要当同时满足这两个条件时,返回结果为“1”,否则返回“0”。返回的结果为:
{1;0;1;0;1;0;1;0;1;0}
(4)IF(($A$2:$A$11=F2)*($C$2:$C$11=G2),$D$2:$D$11),当满足供货单位为“AAA”且产品名称为“品1”这两个条件时,返回D2:D11单元格的价格,否则返回去FALSE。返回的结果为:
{6.08;FALSE;6.17;FALSE;6.31;FALSE;6.39;FALSE;6.46;FALSE}
(5)MAX函数对IF函数返回的结果求最大值,最终得到的是满足条件的最大值。
综上,同时满足多个条件求最大值的公式可以总结为
=MAX(IF((条件区域1=条件1)*(条件区域2=条件2),求最大值区域))
拓展(求满足多个条件的最小值):
如下图所示,找到供货单位“AAA”提供的产品“品1”的最低价格。
在单元格H2内输入公式
=MIN(IF(($A$2:$A$11=F2)*($C$2:$C$11=G2),$D$2:$D$11))
按Ctrl+Shift+Enter结束公式输入。
与根据条件求最大值的不同之处是,将MAX函数修改为MIN函数。
联系客服