如果人在同一行中,则求和

时间:2017-06-11 16:54:31

标签: excel excel-formula

我在A栏中有一个带有数字的表。列B到D中填充了名称(人物X,人物Y等),它们不会在同一行中重复:

A       B     C      D
----------------------
100  |  X     Z      B
80   |  Y     X      K
60   |  Z     A      Y

我想使用类似SUMIF的东西来总结我所拥有的名字的所有数字。例如,对于X,我们得到100 + 80 = 180,而对于Y 80 + 60 = 140。

3 个答案:

答案 0 :(得分:2)

方法1: 如果您只有三列B:D,请使用下面的3 SUMIFs,(column F是您的总和标准)

=SUMIF(B:B,F1,A:A)+SUMIF(C:C,F1,A:A)+SUMIF(D:D,F1,A:A)

enter image description here

方法2: 如果列数较多,请使用column E - 帮助列

中的以下公式
=B1&C1&D1

此公式将列连接到单个字符串。然后输入公式以获得column H

中的总和
=SUMIF(E:E,"*"&G1&"*",A:A)

enter image description here

答案 1 :(得分:2)

=SUMPRODUCT($A$1:$A$3*($B$1:$D$3="X"))

您可以将"X"替换为任何单元格引用。公式利用了X,Y等&#34>不在同一行内重复的事实"

您也可以使用完整列来避免设置行号...但它会慢一些:

=SUMPRODUCT(A:A*(B:D="X"))

答案 2 :(得分:0)

您可以创建hashmap。如果名称已存在则遍历,然后为其添加值,否则创建具有该名称的新条目并添加值。