具有多个条件和列表的 COUNTIF

COUNTIF with multiple criteria and list

我需要计算满足 'CRITERIA 1'、'CRITERIA 2' 且 'CRITERIA 3' 落在列 E.[=13 中包含的值集中的单元格数量=]

我目前正在使用以下公式:

=SUM(COUNTIFS(A2:A11,"TRUE",B2:B11,"TRUE",C2:C11,{"2","4","6","9","10"}))

但在我的真实 table 中,'CRITERIA 3' 中的数据列表更长更复杂,我更愿意引用 E 列中的单元格而不是特定数据,即类似:

=SUM(COUNTIFS(A2:A11,"TRUE",B2:B11,"TRUE",C2:C11,{"E2:E6"}))

请注意,此示例中包含的数据与我的真实 table 中的数据不同。真正的 table 比 table.

更长更复杂

有什么建议吗?

你可以试试 SUMPRODUCT

=SUMPRODUCT((A2:A11="TRUE")*(B2:B11="TRUE")*(E2:E6="2"))

使用 COUNTIFS 我知道检查列表中的值的唯一方法是创建一个具有该检查的虚拟列,并使该列 Criteria3 而不是实际值。

根据您的示例,您将在 D 列中放入以下公式(将文本设置为白色,这样工作簿看起来不​​会难看): =IF(COUNTIF(E:E, C2)>0, 1, "")

然后您的 Criteria3 更新,您将拥有: =SUM(COUNIFS(A2:A11, "TRUE", B2:B11, "TRUE", D2:D11, 1))

如果这不理想,我能想到的唯一其他方法是使用宏为您获取 SUM

决定将我的评论作为答案,这样我就可以展示一张有效的图片:

你很接近。 Range 是一个数组,所以不需要 {""} 包装器

只需使用:

=SUM(COUNTIFS(A2:A11,"TRUE",B2:B11,"TRUE",C2:C11,E2:E6))

这是一个数组公式,必须用 Ctrl-Shift-Enter 确认。