Excel:如何根据多个条件对某一列中的值求和

Excel:如何根据多个条件对某一列中的值求和

我在第 20 行有一个标准列表,如下所示:

A20: "My Company, Inc."
B20: "Client Expenses"
C20: "Travel"

数据如下,像这样:

B40: "Client Expenses"
C40: "My Company, Inc."
D40: "Travel"
I40: $100

B41: "Client Expenses"
C41: "Acme, Inc."
D41: "Travel"
I41: $200

B42: "Client Expenses"
C42: "My Company, Inc."
D42: "Food"
I42: $300

B43: "Client Expenses"
C43: "My Company, Inc."
D43: "Travel"
I43: $400

如果 A、B、C 中的条件为 20,则我想要对 I 列的所有内容求和,B、C、D 中的数据为 40:43

在 OpenOffice Calc 中,其工作原理如下:

=SUMPRODUCT($C$40:$C$66=A27;$D$40:$D$66=C27;$B$40:$B$66=B27;$I$40:$I$66)

在 Mac OS X 版 Excel 中,结果为 $0。有人能帮我修复这个问题吗,或者能想出其他方法来实现同样的效果吗?

答案1

将每个参数括在括号中,并在其前面添加两个破折号。以下是重写的内容:

=SUMPRODUCT(--($C$40:$C$66=A27),--($D$40:$D$66=C27),--($B$40:$B$66=B27),$I$40:$I$66)

那应该可行。

答案2

根据您的本地语言设置,您可能需要用逗号替换分号。

如果使用逗号作为小数分隔符,例如 123,45(如欧洲大部分地区一样),则分号通常用于分隔公式中的参数。

如果您使用小数点/句点表示小数,例如 123.45,则逗号将用作参数分隔符。因此,这可能有效:

=SUMPRODUCT($C$40:$C$66=A27,$D$40:$D$66=C27,$B$40:$B$66=B27,$I$40:$I$66)

或者,尝试使用 SumifS(一种使用多个条件执行 SUMIF 的较新函数)或 DSUM(它允许您添加“OR”条件以及“AND”条件,例如:

公司 = “Acme” AND (费用类型 = “旅行” OR “食品”)

答案3

用逗号代替分号能解决这个问题吗?

您还可以将表格转换为数据透视表,并根据需要过滤条件。如果您还不知道如何使用数据透视表,您的案例似乎很简单。只需将相关条件拖放到框中即可。

相关内容