在单个公式中使用标准Excel函数的一系列复杂数组组合(不涉及VBA或UDF),我在公式中出现了以下结果。我现在需要在公式中添加一个最后一步,从这个数组中拉出一个数字:
{0,0,0,4,0,6,7...}
使用Excel公式,如何检索第一个非零数字(在此示例中为4)而不对数组进行任何其他引用?由于从源数据生成此数组所需的计算的复杂性,我宁愿不在同一公式中执行此操作两次。
所以我正在寻找可以应用于数组的函数或运算符,以便产生所需的结果 - 理想情况下优雅和简单。 MATCH
和LOOKUP
失败,因为它们需要对数组进行排序。 MIN
失败,因为最低值为0,而不是4。
注意:每个非零数字的值也对应于它在数组中的位置(第一个是1,第二个是2,等等),所以第一个非零数字将始终是最小。
答案 0 :(得分:2)
试试这个
=1/AGGREGATE(14,6,1/{0,0,0,4,0,6,7},1)
它找到忽略误差值的倒数的最大值,因此答案为0.25。然后它需要它的倒数。