计数非空白单元格根据另一列中的月份形成列,然后求和单元格的值?

我有一个电子表格有两列 – 第一个是date列,第二个是数量列。 现在我又创build了两个名称分别为“月份交易数量”和“月份总量”的栏目。 数量栏的某些单元格是空白的。 目前我的表是这样的:

在这里输入图像说明

现在,我正在尝试添加公式,该公式会自动计算相对于几个月的交易次数和总金额。

我目前获得交易次数的公式是=SUMPRODUCT(--(Month(A2:A7)=1))=SUMPRODUCT(--(Month(A2:A7)=4)) 。 这种方法的问题是他们返回3和3个交易,而他们应该返回2和2,因为1个交易是空的。

同样,我用来获得每月总额的公式是一月=SUM(B2:B4) =SUM(B5:B7) ,四月=SUM(B5:B7) 。 这里的问题是,如果我们每个月有1000个事务,那么select单元格就会变得很麻烦。 所以我需要基于月份自动求和的公式。

什么是最好的方法?

调整你SUMPRODUCT包括一个检查空白:

 =SUMPRODUCT((Month(A2:A7)=1)*(B2:B7<>"")) 

那么总结一下:

 =SUMPRODUCT((Month(A2:A7)=1)*B2:B7) 

=SUMPRODUCT(--(MONTH(A2:A7)=1),--(B2:B7>0))应该为您解决这个问题。 所有你需要的是额外的专栏。 sumproduct的美妙之sumproduct在于,它允许您sumproduct 乘法并添加结果。

顺便说一下,如果你想自动化公式的月份部分,你可以使用MONTH(D2&" 1, 1900") ,它基本上把你的“April”变成“1900年4月1日”,以便让你打电话给MONTHfunction。

这会给你留下可拖动的公式=SUMPRODUCT(--(MONTH(A$2:A$7)=MONTH(D2&" 1, 1900")),--(B$2:B$7>0))