在Excel中的矩阵中求和元素

时间:2012-06-12 19:43:50

标签: excel

id  a   b   c

1   0   0   0
1   0   0   0
2   0   0   0
2   0   0   0
3   1   2   3
3   0   0   1

鉴于上述矩阵,我想创建一个新矩阵,它对给定年份(a,b或c)中给定id的第一个矩阵内的数字求和。因此,对于上述内容,它应该看起来像:

    1   2   3
a   0   0   1
b   0   0   2
c   0   0   4

谁能看到该做什么?

3 个答案:

答案 0 :(得分:2)

尝试使用SUMPRODUCT而不是SUMIFS,例如

=SUMPRODUCT(B2:D7,(B1:D1="a")*(A2:A7=1))

答案 1 :(得分:0)

我建议您尝试使用数据透视表来解决这个问题 以下是您可能用于学习该功能的2个链接:
http://www.cpearson.com/excel/pivots.htm
http://www.youtube.com/watch?v=7zHLnUCtfUk

Pivots的唯一缺点是,如果源范围的大小发生变化,则Pivot将不会自动调整。因此,一旦您设法解决了初始问题并了解数据透视表的功能,我建议您使用Dynamic Named Range作为数据透视表的来源。


编辑: 我觉得barry houdini's solution更简单。我在下面复制了(所有信用都属于他!) enter image description here

答案 2 :(得分:0)

当数据标题已经到位且数据范围不是太大时,其他响应中给出的公式解决方案将很有效。

数据透视表会为您创建行标题和列标题,并在您单击“刷新”按钮时添加新数据时更新,当数据范围很大时,它也会显着更快。

enter image description here

<强>步骤

A)为您的数据范围选择Insert | Table,并为其指定合适的名称,默认为 Table1

B)通过快捷方式Alt+D+P访问数据透视表向导(这不在默认菜单上)。

1)  Multiple Consolidation Ranges 
2a) I will Create the Page Fields
2b) Range: Table1[#All]  Page Fields: 0
2c) Existing Worksheet: $A$7

C)单击“完成”,切换“行”和“列”字段,然后关闭总计和自动格式化