Excel公式: 获取非连续单元格区域中只出现一次的数字( 二 )


这是以这种方式使用AGGREGATE函数时要注意的关键技术 。因为如果我们在此函数中将第二个参数options设置为6,即“忽略错误值”,那么它将恰好做到这一点 。
上述公式可转换为:
AGGREGATE(15,6,{#DIV/0!;1;2;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;9;#N/A},ROWS(A$2:A2))
其第一个参数function_num被设置成15,等价于执行SMALL函数 。(你可能想,为什么不将第一个参数设置成5,即MIN,这是不合适的 。因为在AGGREGATE函数的第一个参数的所有可选项中,仅14-15能够保证在传递给函数的数组不是实际的工作表区域时能正常运行,而这里的数组是由其他函数生成的,如果设置成1-13中的任一个,则需要传递给函数的数组是实际的工作表区域 。)
对于单元格A2的公式中来说,最后一个参数k的值是1,即ROWS(A$2:A2)的返回值 。因此,AGGREGATE函数部分转换为:
AGGREGATE(15,6,{#DIV/0!;1;2;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;9;#N/A},1)
结果为1 。
这样,单元格A2中的公式转换为:
=IF(1>$A$1,””,1)
即:
=IF(1>3,””,1)
结果为1 。

猜你喜欢