嵌套 IF 语句

嵌套 IF 语句

Excel 2010,没有MINIF自带。

为了解决这个问题,我可以使用数组公式。

样本数据。

Field 1 Field 2 Score
B       1       1
A       1       2
A       0       3
A       0       4
B       1       5

如果我想要字段 1 等于 A 时的最低分数,我会使用:

{=MIN(IF(A2:A6="A",C2:C6,""))}

这对于 MIN IF 来说很好,

field 1但是如果等于Afield 2等于,我想要最低分数1

当我引入 AND 来表示两个条件时,它失败了。即 MINIFS

{=MIN(IF(AND(A2:A6="A",B2:B6=1),C2:C6,""))}

有人有办法解决吗?

答案1

您不能使用AND数组公式,因为结果是一个值而不是一个数组 - 尝试使用 * 来模拟AND

=MIN(IF((A2:A6="A")*(B2:B6=1),C2:C6))

或者使用多个 IF,如下所示:

=MIN(IF(A2:A6="A",IF(B2:B6=1,C2:C6)))

均已确认CTRL++SHIFTENTER

答案2

嵌套 IF 语句

正如您所注意到的,AND 函数不支持数组,但您可以通过嵌套 IF 语句来实现您想要的结果。

我对您的数据使用的公式如下:

=MIN(IF(A2:A6="A",IF(B2:B6=1,C2:C6)))

这是一个数组公式,按 ctrl+shift+enter 使用

这是由于 Excel 内部处理布尔数据的方式所致,如果未指定 FALSE 情况,它将返回 0。

答案3

您可以结合使用 INDEX 和 MATCH 来查找基于多个标准的锻炼的最小值。此公式也可用于单个标准。

{=INDEX(C2:C6,MATCH(1,IF(A2:A6="A",IF(B2:B6=1,1)),0))}

注意,这是一个数组公式,因此请用Ctrl+Shift+Enter

相关内容