0

我一直试图让这个数组函数在“最终数据”AE 列中输出(非零)最小值。你能在这个公式中看到结构错误吗?

       =IF($C$4="All EMEA",

MIN(IF('FINAL DATA'!$2:$AE$250000<>0,

('FINAL DATA'!$J$2:$J$250000=$C$4)*('FINAL DATA'!$E$2:$E$250000=$E$4)*( 'FINAL DATA'!$AE$2:$AE$250000))),

MIN(IF('FINAL DATA'!$AE$2:$AE$250000<>0, 

('FINAL DATA'!$K$2:$K$250000=$C$4)*('FINAL DATA'!$E$2:$E$250000=$E$4)*( 'FINAL DATA'!$AE$2:$AE$250000)))

)
4

4 回答 4

2

通过使用 <>0 可以消除零和空白,所以这不是问题.....[尽管您只想消除空白并将零作为有效的返回值,您应该使用<>"" ]

您不能将条件与数字范围相乘,因为通过将条件不满足的任何行相乘,您会得到零,请改用多个 IF,如下所示:

=MIN(IF('FINAL DATA'!$AE$2:$AE$250000<>0,IF('FINAL DATA'!$J$2:$J$250000=$C$4,IF('FINAL DATA'!$E$2:$E$250000=$E$4,'FINAL DATA'!$AE$2:$AE$250000))))

于 2012-10-19T16:58:42.780 回答
1

第二行,你有!$2,没有指定列。

MIN(IF('最终数据' !$2 :$AE$250000<>0,

此外,您似乎正在尝试针对某个范围运行单个 If 比较,我认为这不会像您尝试使用它的方式那样起作用。

于 2012-10-19T16:38:10.037 回答
1

Barry 已经确定了核心问题(测试 returnimg 0 到 MIN 函数)。

这是解决此问题的公式(仍然是数组公式)的重构,并且要短得多

=MIN(IF(($S:$S<>0)*($E:$E=$E$4)*(IF($C$4="All EMEA",$J:$J,$K:$K)=$C$4),
 ($S:$S)))

请注意,0如果范围内没有符合条件的值 >0,这将返回(与您的原始公式一样,修复后)

于 2012-10-19T19:22:54.660 回答
0

IF()您可以通过在数组公式中使用函数来消除零。考虑以下:

       A
Row  -----
 1       0
 2       7
 3       5
 4       6
 5        
 6       3

数组公式=MIN(IF($A$1:$A$6>0,$A$1:$A$6))将返回3,因为if 语句的部分0消除了空白单元格和空白单元格。>0

于 2012-10-19T16:37:02.403 回答