Excel 使用 MIN 数组中的日期减法忽略空白单元格

Excel 使用 MIN 数组中的日期减法忽略空白单元格

我正在尝试找出两组日期之间的最小差异。

最简单的数组公式可以工作并找到最小的差异,但如果其中 1 列缺少日期,它会将空白单元格视为 0,并且天数的最小差异的结果将变成 -42634(这不是我想要的)。

{=MIN(X23:X95-P23:P95)}

经过一些阅读后,我尝试仅当两列都不为空并且仅对单行起作用时才进行减法......

=IF(OR(ISBLANK(X23),ISBLANK(P23)),"",X23-P23)

如果我尝试用...#VALUE!包装它,它会返回错误MIN

=MIN(IF(OR(ISBLANK(X23),ISBLANK(P23)),"",X23-P23))

我不是 Excel 专家,但我猜是因为 aMIN中只有空白单元格会引发错误,因为我读到它应该忽略空白。在两个单元格上使用MIN/MAX似乎证实了这一点,其中一个单元格包含日期,另一个单元格为空白,因为它只显示日期。

我尝试将其合并到原始公式中,但我不知道自己在做什么,最终再次出现错误#VALUE!。帮忙吗?

{=MIN(IF(OR(ISBLANK(X23:X95),ISBLANK(P23:P95)),"",X23:X95-P23:P95))}

答案1

OR将其所有参数评估为一个结果(而不仅仅是成对的)。

根据需要评估它
IF(ISBLANK(X23:X95)+ISBLANK(P23:P95)...

提示:为了更好地理解您的公式,您可以对其进行评估,并在公式 - “评估公式”中逐步查看结果

编辑

使用+-/*运算符,Excel 会自动将布尔值转换为整数(True -> 1;False -> 0),因此加法(+)的作用类似于 OR,乘法(*)的作用类似于 AND。
之后,IF将数字转换回布尔值(0 -> False,非零 -> True)。

相关内容