在EXCEL中,如何以日期为条件进行求和?

比如我建好了一个表格
A B
2011-10-15 2000
2011-10-25 3000
2011-11-2 5000
2011-11-26 2000
2011-12-5 6000
2012-1-8 3000
如何在另一个表中分别统计出2011年10月、11月、12月与2012年1月的合计数?请写明公式,并解释。谢谢了
大家可能理解错了啊,我说的是在sheet1中建了这个表格,我要在sheet2中按月份求合计数,公式该怎么写呢?

加入A10单元格是数字10,在B10写如下公式 那么就是统计10月合计

=SUMPRODUCT(1*(MONTH($A$2:$A$7)=A10),$B$2:$B$7)

解释

SUMPRODUCT(array1,array2,array3, ...)

Array1, array2, array3, ... 为 2 到 30 个数组,其相应元素需要进行相乘并求和。

MONTH($A$2:$A$7)表示求A2:A7的月份 然后于=A10是判断是否为待统计月份,如果是则是true,不是就是false,然后外边*1转化为1和0,这部分公式计算的结果是对A列判断结果的数组

次数为{1,1,0,0,0,0}

第二个参数就是待统计的数字部分了,sumproduct将两个数组参数相乘求和计算方式如下

1*2000+1*3000+0*5000+0*2000+0*6000+0*3000

结果自然就是10月份的统计值了

追问

大家可能理解错了啊,我说的是在sheet1中建了这个表格,我要在sheet2中按月份求合计数,公式该怎么写呢?

追答

一样的 只是在引用单元格的地方加上sheet1!即可
=SUMPRODUCT(1*(MONTH(sheet1:$A$2:$A$7)=A10),sheet1!$B$2:$B$7)
这里的A10就是sheet2中 当然也可以是任意填写了月份的单元格

追问

似乎不行呢,我QQ:18591631,加Q聊啊,麻烦了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-02-27
2011年10月 =SUMIF(SHEET1!A:A,">=2011/10/1",SHEET1!B:B)-SUMIF(SHEET1!A:A,"<=2011/10/31",SHEET1!B:B)
11月 =SUMIF(SHEET1!A:A,">=2011/11/1",SHEET1!B:B)-SUMIF(SHEET1!A:A,">=2011/11/30",SHEET1!B:B)
查找A列大于等于2011年10月1日的B列数值之和减去A列大于等于2011年10月31日之和得出的值就是10月的数据之和,其他月份改一下公式内的日期值就行了,得出的答案单元格格式改为常规.
第2个回答  推荐于2017-12-15
假如这些数据是放在sheet1表A1-B6区域中的,在sheet2表A1单元格内输入2011-10,在A2单元格内输入2011-11,以此类推,在sheet2表B2单元格输入=SUMPRODUCT((YEAR(Sheet1!A1:A6)&"-"&MONTH(Sheet1!A1:A6)=YEAR(C5)&"-"&MONTH(C5))*Sheet1!B1:B6)。
按月份:=SUMPRODUCT((MONTH(Sheet1!A1:A6)=C5)*Sheet1!B1:B6)追问

请问你这个公式中的C5是指什么啊?

追答

C5是指你输入的月份,譬如:10、11、12

本回答被提问者采纳
第3个回答  2012-02-27
用SUMPRODUCT函数解决追问

能说详细点吗?

相似回答