Excel - 集合上的 SUMIFS

Excel - SUMIFS over a set

我正在尝试使用条件为 B 列等于 1 或 11 的求和:

=SUMIFS(A:A,B:B,{1,11})

上面的公式非常有效。但现在我想做的是将 {1,11} 存储在一个单元格中(例如单元格 C1)。那么:

=SUMIFS(A:A,B:B,C1)

这不再有效,它似乎将 C1 拉高为“{1,11}”。即使单元格 C1 中没有可见的引号,当我突出显示 C1 并在 sumif 公式中按 F9 时,引号也会出现。

有什么办法吗?我希望能够将数组 {1,11} 设置为单独单元格中的变量,因为这可能会改变。我不希望它在 sumifs 公式中进行硬编码。

谢谢!!

一种可能是您可以在 C1 中使用文本:

'{1,11}

然后定义一个名称将其转换为数组:

EvalC1指的是

=EVALUATE($C)

请注意,您可以在数组公式中使用名称:

=SUMIFS(A:A,B:B,EvalC1)

将您想要的查找放在 C1 及以下,这是动态的

=SUMPRODUCT(SUMIFS(A:A,B:B,C1:INDEX(C:C,MATCH(1E+99,C:C))))

只需确保 C 列中没有其他数字并且列表是连续的。