Excel - 基于两列返回唯一值的计数

时间:2016-04-29 16:03:13

标签: excel excel-formula

我正在处理一个有很多列和几张纸的项目。为简单起见,我会发布我需要帮助的人:在表格中,我有一个用户名以及他们是否收到证书。证书的计算基于他们在其他测试中的通过次数(三次或更多次给他们证书)。在另一张表格中,我发布了统计信息,其中我只想显示唯一证书总数。该表看起来如下(简化)。

*Username* | *Test Result* | *Bundle*
abc        | Pass          | ""
abc        | Pass          | ""  
123        | Pass          | True
123        | Pass          | True
123        | Pass          | True
123        | Pass          | True
qwerty     | Fail          | False
qwerty     | Pass          | False
qwerty     | Pass          | False

因此,如上所述,他们需要三次或更多次测试才能拥有" Bundle"。如果他们通过两个并且未通过第三个,那么他们就会因为" Bundle"而失败。如果他们没有进行过三次测试,那么它就不算作通过或失败。

在另一张表格中,我想显示已经 获得" Bundle"的唯一学生的数量和避风港

我尝试过的一些事情:

=COUNTIFS(MOS_Table[Username],"*",MOS_Table[Bundle],TRUE)

(注意:MOS_Table是表的名称)这将计算Bundle列中个TRUE值的数量,但对每个测试计算同一个学生已经采取。

=COUNTIF(MOS_Table[Bundle],TRUE)

返回与上面相同的内容。

我通过SUMPRODUCT以及SUM,COUNTIFS和其他内容的组合尝试了其他人。我不确定是否有更好的方法可以解决这个问题,但我会采取任何措施让它发挥作用。从长远来看,最多可能有400-500行。

提前致谢!

1 个答案:

答案 0 :(得分:0)

请试试这个:

=SUM(IF(MOS_Table[Bundle]=TRUE,1/COUNTIF(MOS_Table[Username],MOS_Table[Username])))
  

这是一个数组公式,必须用 ctrl + shift + 输入确认!

countif返回一个完整计数{2,2,4,4,4,4,3,3,3}的数组,而1/使得它可以被总结,但仅适用于IF {{1}的真实部分}。在你的例子中,这是1。

如果您还有任何疑问,请询问:)