如果 B 不在值列表中,则对 A 的值求和的电子表格公式

Spreadsheet Formula to Sum Values Over A if B is not in a List of Values

我有一个 table 看起来如下:

|  A   | B | C |
| 40   | 1 | 1 |
| 180  | 2 | 2 |
| 34   | 1 |
| 2345 | 3 |
| 23   | 1 |
| 1    | 2 |
| 4354 | 3 |
| 2    | 2 |
| 343  | 4 |
| 2    | 2 |
| 45   | 1 |
| 23   | 1 |
| 4556 | 3 |

我想获取 A 中所有字段的总和,其中 B 既不是 1 也不是 2 或列 C 中的任何其他值。此列包含 B 的值,其中不应将 A 中的值视为总和。

我不知道 B 可能包含哪些值,这些值是随机的并且可能会变大,我只是想让示例变小。我目前的解决方案是

{=SUMIF(B1:B13,C1:C2,A1:A13)}

所以我可以设置应从 C 列的总和中排除的行。不幸的是,当前的解决方案并没有解决我的问题,而是解决了一些不同的问题——它按 C 中的值汇总了相应的条目。我的首选解决方案看起来像

=SUMIF(B1:B13,"<>{1, 2}",A1:A13)
=SUMIF(B1:B13,"<>"&C1:C2,A1:A13)

如果可能的话(不是)。我想要:

您可以使用数组公式,以便将 A 中的每个值与一个条件相乘。该条件可以是任何有效的 Excel 公式,因此,例如,您可以使用 MATCH 来测试 B 值是否出现在 C:

=SUM((A1:A13)*ISNA(MATCH(B1:B13,$C:$C,0)))

ISNA函数returnsTRUE当匹配失败时,在乘法中用作数值1。FALSE将使乘积为0。

确保使用 Ctrl+Shift+Enter 将其作为数组公式输入