Excel:按照组计数的多行上具有匹配标准的CountIfs

我认为这一定是可能的,但似乎无法弄清楚。

我有以下数据:

| responseid | Question | Answer | ________________________________________ | 1 | Favorite Color | Red | | 1 | Favorite Food | Pizza | | 1 | Favorite Sport | Soccer | | 2 | Favorite Color | Red | | 2 | Favorite Food | Pizza | | 2 | Favorite Sport | Darts | | 3 | Favorite Color | Red | | 3 | Favorite Food | Tacos | | 3 | Favorite Sport | Soccer | 

我想知道有多less调查都有回应

喜欢的颜色==红色和喜爱的运动==足球。

在这种情况下,它将是2(id1和id3)

谢谢。

编辑:解决scheme

我能做的事情是使用powerqueryfunction来调整数据。 从表中创build一个查询,select答案/问题列>转换选项卡>数据透视表>不聚合。

那时我的桌子

 response | color | food | sport 1 | red | pizza| soccer 2... 3... 

这使用不需要数组公式的帮助器列:

在助手列使用这个公式:

 =IF(AND(C2="Red",COUNTIFS(A:A,A2,C:C,"Soccer")),1,0) 

然后总结列。

在这里输入图像说明

试试这2个公式:第一步,您需要在答案栏旁边input以下数组公式(您必须使用Ctrl + Shift + Enter确认,而不是只按Enter键):

 =IF(A2=A1,"",SUM(($A$2:$A$10=A2)*(($B$2:$B$10="red")+($B$2:$B$10="soccer")))) 

在同一列粘贴这个正常的公式,以期望的标准来统计调查:

 =COUNTIF($C$2:$C$10,"=2") 

看下面的两个图像视图与公式: 与公式的看法

正常观点: 正常的看法

假设响应“红色”和“足球”的响应每次只能发生一次响应

=SUM(IF(FREQUENCY(IF(MMULT(COUNTIFS(C2:C10,{"Red","Soccer"},A2:A10,A2:A10),{1;1})=2,A2:A10),A2:A10),1))

编辑:根据你的评论,小调整:

=SUM(IF(FREQUENCY(IF(MMULT(COUNTIFS(B2:B10,{"Favorite Color","Favorite Sport"},C2:C10,{"Red","Soccer"},A2:A10,A2:A10),{1;1})=2,A2:A10),A2:A10),1))

问候