2

我正在使用以下公式: =MIN(IF(A1:A5>B1,A1:A5)) 使用 Ctrl-Shift-Enter 我的 B1 值为 10,我的数组是 {1,5,4,2,7}所以在这种情况下没有值大于10。问题是excel返回0作为空集的结果,这是一个问题,因为0不大于10。在这种情况下,我可以测试结果0是否更大大于 10 并看到结果无效,但是,如果 B1 对于 {-15,-24,-11,-37-60} 的数组为 -10,则在不存在正确值时,0 似乎是有效值。

因此,任何人都知道我如何找到带有约束的集合的最小值或最大值,但如果解决方案集为空,则返回错误或不同的东西?

谢谢你。

4

2 回答 2

4

尝试使用SMALL代替MIN,即

=SMALL(IF(A1:A5>B1,A1:A5),1)

与函数不同MIN的是SMALL,您的示例将返回错误 [#NUM!]

....或者如果你想要一个文本值而不是一个错误,那么也使用 IFERROR 函数,即

=IFERROR(SMALL(IF(A1:A5>B1,A1:A5),1),"None")

于 2014-01-14T16:13:52.820 回答
1

如果范围内的数字都不大于 10,则您的 IF 语句将返回False。似乎MIN正在将 False 转换为数字 (0)。您需要添加行为来处理 False。

如果您知道所有有效值都必须 >=0,那么您可以使用IF公式的“else”部分返回 -1。

MIN(IF(A1:A5>B1,A1:A5,-1))
于 2014-01-14T15:24:15.870 回答