为什么 Excel countif 会得到双重结果?

为什么 Excel countif 会得到双重结果?

我在实地考察期间研究过一片森林,其中有一张点列表,每个点都与一些树木相关联。这些树木在该点内被赋予一个编号并指定一个物种。在 700 多个点上统计了超过 11,000 棵树。

我试图计算每个点上特定物种的树木数量,但我注意到在某些点上我得到的结果是预期结果的两倍,因此我将 countifs 简化为 countifs,并注意到对于这些相同的点,Excel 重复计算了这些点。这可能是为什么?

这是我的表格的前 10 行:

在此处输入图片描述

当我使用公式时:

=COUNTIF(A:A,"08-13")

我得到了 56,是我预期 28 的 2 倍。如果我对 A:A 使用“查找全部”,它会按预期返回 28 个单元格。

我知道我的点名称的格式不太好,因为它与日期格式相似,但到目前为止我已经设法避免了这个问题,并且不明白为什么它会在这一点上引起问题。

任何帮助都将不胜感激!

答案1

感谢@ScottCraner 提供的解决方案,但我想我会花几分钟写出答案,以防有人遇到同样的问题。

问题在于,由于点号的格式可以被 Excel 解释为日期,因此它被解释为日期。因此,尽管单元格格式将“08-13”存储为字符串并避免转换为日期,但调用if语句会导致 Excel 重新将字符串视为日期。

这里的解决方案是使用sumproduct以下格式:

 =SUMPRODUCT(--(A:A="08-13"))

其中--(A:A="08-13")是第一个数组,之后如果需要的话也可以使用其他数组*ifs来代替简单的*if

感谢大家对此进行调查,特别感谢@ScottCraner 的修复:)

相关内容