2016-04-29 84 views
1

我正在處理一個有許多列和幾張表的項目。爲了簡單起見,我只發佈需要幫助的人:在表中,我有一個用戶名,並且他們是否收到證書。證書的計算是基於他們在其他測試中的通過次數(三個或更多證書給他們)。在另一張表格上,我發佈了統計數據,我只想顯示總數爲的唯一證書。該表看起來像下面(簡化)。Excel - 基於兩列返回唯一值計數

*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 

因此,與上述,他們需要三個或更多的測試有「捆綁」。如果他們通過兩個失敗的三分之一,他們會失敗的「捆綁」。如果他們沒有進行三次測試,則不算合格或不合格。

另一個頁面上,我想告訴誰已經得到了「捆綁」而爲之獨特學生人數還沒有

一些我試過的東西:

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

(注:MOS_Table是表的名稱)這將算在包列數真值,但數他們每次參加測試的同一名學生。

=COUNTIF(MOS_Table[Bundle],TRUE) 

該返回與上述相同。

我試過其他SUMPRODUCT和SUM,COUNTIFS和其他東西的組合。我不確定是否有更好的方法可以解決這個問題,但我會採取任何手段使其發揮作用。長期來看,會有多達400-500個可能的行。

在此先感謝!

+0

您是否嘗試過樞軸表1的簡單計數過濾器,然後只是有一個查找到你需要什麼?它有點解決方法,但似乎達到了你的目標。 –

+0

我還沒有進入數據透視表,所以我不確定他們的用途或功能。我確實需要統計表上有幾個表格,每個測試的細節和他們的合格率等數據。這聽起來像是Pivot Tables能爲我做的事嗎? – Dekaiden

回答

0

請試試這個:

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

這是一個數組公式,必須以CTRL ++進入證實!

的COUNTIF返回完整的計數{2,2,4,4,4,4,3,3,3}的陣列和1/使得它,所以它可以概括,但僅限於的IF{FALSE,FALSE,0.25,0.25,0.25,0.25,FALSE,FALSE,FALSE}真實的一部分。在你的例子中是1。

如果您還有任何問題,只是問:)

+0

正如一個註釋:如果不是所有的'* Bundle *'都是'TRUE'(或者它們都不是),這會搞砸的......請牢記:) –

+0

對此我感激不盡!我一直在努力研究它兩天。我接近這樣的東西,但有捆綁和用戶名列向後,並沒有做的1 /部分。這太棒了。 '* Bundle *'列沒有全部TRUE,並且有空格,但是,這似乎仍然工作得很好。我一直在進行一些測試,一切都很好。再次感謝你! – Dekaiden

+0

不客氣 –