答案1
不确定是否可以将该特定数组公式用作另一个公式的子表达式。
不过,有一个解决方法。你只需要一个非-计算最小非零值的数组公式。
可以使用以下函数创建此类公式SMALL()
:
=SMALL($A$2:$A$7,COUNTIF($A$2:$A$7,0)+1)
找到可行的解决方案
其中的公式 D2
只是将中的B2
函数MIN()
替换为以下SMALL()
函数:
=IF(NOT($A2=SMALL($A$2:$A$7,COUNTIF($A$2:$A$7,0)+1)),$A2+1,$A2)
注意这个公式是不是已進入阵列!
我更喜欢重构这些类型的公式,以便它们不使用NOT()
并且引用在之外IF()
:
=$A2+IF($A2=SMALL($A$2:$A$7,COUNTIF($A$2:$A$7,0)+1),0,1)
不过,我最喜欢的分解是这样的:
=$A2+($A2<>SMALL($A$2:$A$7,COUNTIF($A$2:$A$7,0)+1))
不幸的是,很多人发现它很老套并且难以阅读,所以我倾向于不使用它。
答案2
目前似乎存在这样的功能,以防有人遇到与我相同的问题。
利用溢出范围功能,您只需将“#”字符附加到您想要用作某些功能一部分的溢出范围的第一个单元格的地址,例如“A1#”。