如果列 a 或列 b 包含指定值,则 Excel SUMIFS 添加值

标签 excel excel-formula sumifs

我环顾四周,找不到解决方案,我什至不知道这是否可能。

我有两个工作表。我要 Sheet1!G5显示 Sheet2!D:D 中的值的总和在哪里 Sheet2!A:ASheet2!B:B等于 Sheet1!D5 .

我知道它有点复杂,就像我说的那样,我什至不知道这是否可能,或者 SUMIFS是要使用的正确公式。

有关电子表格中的虚拟数据,请参见下图。
基本上我希望有人能够搜索有多少台台式机或多少台 HP Elitedesk 800 G1(有更多不同型号的台式机、笔记本电脑和显示器等,但我只是在虚拟数据中没有它们......这就是为什么我希望能够搜索这两个字段。

Sheet 1

Sheet2

最佳答案

如果我的逻辑是正确的,您应该能够摆脱两个单独的 SUMIF,一个用于 A 列,一个用于 B 列,加在一起:-

=SUMIF(Sheet2!A:A,D5,Sheet2!D:D)+SUMIF(Sheet2!B:B,D5,Sheet2!D:D)

对于任何行,A 列和 B 列中的内容似乎都不可能相同,但如果是这样,您可以进行更正以避免重复计算,如下所示:-
=SUMIF(Sheet2!A:A,D5,Sheet2!D:D)+SUMIF(Sheet2!B:B,D5,Sheet2!D:D)-SUMIFS(Sheet2!D:D,Sheet2!A:A,D5,Sheet2!B:B,D5)

第一个公式可以很容易地修改为使用两个以上的条件列(例如,如果您也想匹配序列号),但第二个不能。

要获得基于多于两列的总量,其中一个字符串可以在同一行中出现多次,您需要一个数组公式,如
=SUM(SIGN((Sheet2!A2:A10=D5)+(Sheet2!B2:B10=D5)+(Sheet2!C2:C10=D5))*Sheet2!D2:D10)

必须使用 CtrlShiftEnter 输入

关于如果列 a 或列 b 包含指定值,则 Excel SUMIFS 添加值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35205124/

相关文章:

excel - 日期(现在)显示 1900 年 1 月?

excel - 使用 PowerShell 中的参数启动 Excel 宏

excel - 如何在vba(格式或控制工具箱)中设置选中的属性

excel - 如何在excel中选择包含相同值的最后一个单元格

java - 如何在 java 中使用 Math.round() 获取 =ROUND(A8/1000,2)* 1000(excel 公式)输出

excel - 连接字符串,然后使用 ="concatenated string"执行字符串语句

excel - 如果列包含日期,则 IF 语句计算日期之间的天数

filter - SUMIF 与 Google 电子表格中的 FILTER 函数一起使用

vba - 总和范围直到某个单元格颜色或值之后?