在 Excel 中对多个工作表中的值进行计数

在 Excel 中对多个工作表中的值进行计数

我有一个 excel 文件,其中包含多个工作表,名称分别为 1、2、3...31(代表一个月中的天数)。您在下面看到的表格在每一页上,但值不同。

RDC 1   5000
RDC 2   0
CAPS    0
TILT    0
FOAM    12500

我想计算每个选项的正值。因此,如果 CAPS 在 20 张表中有正值,它应该返回“20”。对于最后 3 个选项,我这样做没有问题。我使用了公式:

=SUMPRODUCT(COUNTIF(INDIRECT("'"&A2:A32&"'!B3");">0"))

上述公式的图像

但我想将前两个选项算作一个。因此,如果:

  • 第一天,RDC1 为正值,RDC2 为 0,因此应计为 1

  • 第 2 天,RDC1 和 RDC2 都为正值,因此也应算作 1,而不是 2

  • 第 3 天,RDC1 和 RDC2 的值均为 0,因此应计为 0

我尝试使用公式(并将总计数单元格格式化为没有小数的数字,因此当它为 0.5 时它应该返回 1 )

=SUM(IF('1'!B1>0;1;0);IF('1'!B2>0;1;0))/2 + ... 针对所有日期 ... + SUM(IF('31'!B1>0;1;0);IF('31'!B2>0;1;0))/2

它适用于较少的工作表,但当我为所有工作表编写公式时,它会返回错误。是的...这是一个非常长的公式。

有人能帮我找到一个解决方案,将上述前两个选项的正值一起计算吗?

答案1

你也COUNTIF可以使用COUNTIFS

=COUNTA(A2:A32)-SUMPRODUCT(COUNTIFS(INDIRECT("'"&A2:A32&"'!B1");"=0";INDIRECT("'"&A2:A32&"'!B2");"=0"))

请注意,COUNTIF执行的是 AND 运算,因此如果您想计算 B1 或 B2 是否 >0,那么只需计算两者均等于 0 时的值,然后从总计数中减去该数字。

相关内容