COUNTIF有多个标准和列表

我需要计算满足“标准1”的单元的数量,“标准2”满足,“标准3”落在E列中所包含的一组值之内。

我目前使用下面的公式:

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

但是在我的真实表格中,“CRITERIA 3”中的数据列表更长更复杂,我希望引用E列中的单元格而不是特定的数据,例如:

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

请注意,本例中包含的数据与我真实表中的数据不同。 真正的桌子比这张桌子更长更复杂。

有什么build议么?

例

决定把我的评论作为答案,所以我可以展示一个图片,它的工作原理:

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

只要使用:

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

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

在这里输入图像说明

你可以尝试SUMPRODUCT

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

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

从你的例子来看,你可以在D列中input下面的公式(把文本设置成白色,这样工作簿看上去不难看): =IF(COUNTIF(E$2:E$6, C2)>0, 1, "")

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

如果这是不理想的,我能想到的唯一方法就是使用macros来为你获得SUM