有时您需要导出最小(或最大)

范围内的值,除非最小(或最大)值为零。例如,您可能具有一系列值,例如\ {0,3,1,4,4,2}。在这种情况下,最小值为零,但您真正想要返回的值为1。

Excel中没有内部函数可以返回此处规定的值。但是,您可以创建一个可以解决问题的公式。假设要分析的值的范围在C4:C8中,则以下公式将返回最低的非零值:

=IF(MIN(C4:C8)=0,SMALL(C4:C8,COUNTIF(C4:C8,"=0")+1),MIN(C4:C8))

该公式使用MIN函数确定该范围内的最小值是否为零。如果是,则使用SMALL函数得出最小值(不包括零)。 (COUNTIF函数返回该范围内的零个数,因此告诉SMALL从范围中选择哪个项目。)

对公式的较小更改可用于返回范围为

的最大非零数。

=IF(MAX(C4:C8)=0,LARGE(C4:C8,COUNTIF(C4:C8,"=0")+1),MAX(C4:C8))

这些公式适用于任何范围,除非范围完全由零组成。在这种情况下,#NUM!返回错误。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(2332)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: