Excel公式:根据日期条目显示总计

时间:2009-04-20 14:40:31

标签: excel spreadsheet

我有一个电子表格,其中有两列代表已处理记录的数量,以及处理记录的日期。在某些情况下,记录可以多批处理,因此文档看起来像这样:

33 4/1/2009
22 4/1/2009
12 4/2/2009
13 4/4/2009
36 4/4/2009

我正在尝试添加一组包含日期的新列,并自动显示该日期的记录总数:

4/1/2009 55
2009年4月2日12 4/3/2009 0
4/4/2009 49

我知道如何以算法方式执行此操作,我可能会在Excel之外操作电子表格,但我正在尝试在实时电子表格中执行此操作,并且对于如何将其删除感到有点困惑。

有什么想法吗?

谢谢! IVR Avenger

3 个答案:

答案 0 :(得分:2)

SUMIF功能是否适合您? SUMIF([range],[criteria],[sum_range])我认为你可以设置range =在第一个列表中包含日期的单元格集,条件是包含第二个列表中日期的单元格,sum_range将是在第一个商家信息的第一列中计算。

答案 1 :(得分:2)

我建议使用数据透视表。将日期放入行区域和数据区域中的“总和”记录。列区域中没有任何内容。

数据透视表将比公式解决方案更具动态性,因为它只会显示存在的日期。

答案 2 :(得分:0)

假设您的日期在B栏中,并且要累积的数字在A中,您可以尝试这样的事情:

  | A  |   B      |    C                D
1 | 33 | 4/1/2009 | =MIN(B:B) | {=SUM(IF(B1:B5=C1,A1:A5,0))} |
2 | 22 | 4/1/2009 | =C1+1     | {=SUM(IF(B1:B5=C2,A1:A5,0))} |
3 | 12 | 4/2/2009 | =C2+1     | {=SUM(IF(B1:B5=C3,A1:A5,0))} |
4 | 13 | 4/4/2009 | =C3+1     | {=SUM(IF(B1:B5=C4,A1:A5,0))} |
5 | 36 | 4/4/2009 | =C4+1     | {=SUM(IF(B1:B5=C5,A1:A5,0))} |

注意{}表示数组公式(使用Control-Shift-Enter输入)表示任何非常重要的数据,它比SUMIF()更快。

我倾向于为A1定义动态名称:A5和B1:B5部分,类似

=OFFSET(A1,0,0,COUNT(A:A),1)

所以我不必继续修理我的公式。

还有一个手动元素:例如为额外日期添加新行 - 这可能是一个小VBA的好地方。或者,如果您可以显示最近90天的总计,那么您可以修复使用的行数。