从Sumproduct(countif)计算特定值

时间:2017-02-09 19:57:47

标签: excel countif

我一直在这个地方生气一段时间,直到现在我能够找到几乎我遇到的任何问题的答案。我觉得我在正确的道路上找到了我需要的答案,但我似乎无法找到正确的方法去解决它。

下面我有一个关于我想要做的简单例子的截图。 在这个例子中,我有4个人,他们选择了他们最喜欢的5种颜色(我生成这样的假数据很可怕,所以请原谅颜色选择哈哈)。最后,我想知道有多少人匹配所有5种颜色(不一定是相同的顺序),有多少匹配4,3,2等。数据集的右边理想情况下我想要的我要看的数据(H2:M11)。

我已经采取了多种方式,但没有取得多大成功。似乎最接近的两种方法是:

看见失败的想法1)我想写一个基本上说“计算sumproduct(countif(人物2,3和4:颜色来自人1)的颜色)等于5(in这个例子为零)。我会复制4种匹配颜色的公式,3,2,依此类推。然后只需求和平均值。

公式本身存在缺陷并返回错误。所以,因为这没有成功......

看到失败的想法2)我想要制作一个“热图”样式表,我可以在行和列上有人1到4然后做一些我知道的东西就像sumproduct(countif(B4:F4,B5:F5) ))对于人1对人2(答案3)。唯一的区别是我必须使用索引(匹配)来通过使用列名来标识正确的行(请参阅示例)。拖动所有16(4x4)个单元格然后只有一个countif(F19:I22,“5”)来计算每个单元格的数量。不幸的是,在countif中使用索引(匹配)会导致#REF!

Simplistic Example Data

如果任何一个概念都可以实现,我可以操纵其余的概念。我知道我可以做热图设计并手动更改每列的公式,但我的实际数据超过100行。 VBA替代品也受到欢迎。

如果我的描述不是很清楚,我道歉。如果它令人困惑,请告诉我,我会更加清楚。谢谢!

1 个答案:

答案 0 :(得分:0)

使用您的想法编号2.使用此数组公式进行步骤1:

=SUM(COUNTIF(INDEX($B:$F,MATCH(J$2,$A:$A,0),0),INDEX($B:$F,MATCH($I3,$A:$A,0),0)))

作为数组公式,需要在退出编辑模式时使用Ctrl-Shift-Enter而不是Enter来确认。如果操作正确,那么Excel会将{}放在公式周围。

enter image description here

第2步:

=COUNTIFS($J3:$M3,P$2,$J$2:$M$2,"<>" & $O3)

enter image description here

相关问题