與亞

2015-06-09 17 views
1

我試圖排名值,並設法解決如何聯繫排序排名。我的數據會查看條目總數,基於此數據進行排名,如果有條線,則會查看下一列值以對其進行排序。但是,我有兩類(我稱之爲東西方數據)在我的數據集中的數據,並希望分開排列(但堅持上面的規則)。所以,如果我有7個參賽作品,其中3個是西部,4個是東部,那麼我希望West根據所有在該子集中的值進行排名1,2,3,East將排列1,2,3, 4。你能否解釋一下你的配方在做什麼,這樣我就可以理解如何在未來更好地應用你的答案。與亞

有效,我問什麼公式需要去實現在我的結果。

乾杯

保羅

回答

1

有一些相關的方法可以做到這一點,大多數涉及SUMPRODUCT。如果您不喜歡下面的解決方案,並且想要研究其他方式/解釋,請嘗試搜索「rankif」。

enter image description here

該函數查找ClassValue列,並且對於這些列的每一個值,返回一個TRUE或1,如果當前Class匹配,並且如果其Value大於當前Value較大, False或0,否則。 SUM加起來所有這些1,1+是用於裝飾。切記使用作爲數組公式輸入Ctrl + Shift + 輸入然後再拖下去。

我用數組公式及以上SUM解釋,但下面也適用,甚至可能會更快,因爲它不是一個數組公式。除了我們劫持SUMPRODUCT從陣列中吐出單個值的能力之外,它的想法是一樣的。

=1+SUMPRODUCT(($A$2:$A$8=A2)*($B$2:$B$8>B2))

編輯

爲了延長秩,如果,你可以乘以多個條件添加更多的子集排名: enter image description here

你也可以很容易地通過添加另一個加分決賽SUMPRODUCT治療關係作爲一個額外的子集: enter image description here

第一SUMPRODUCT是「基地秩」,而第二SUMPRODUCT是決勝局#1。

+0

感謝你爲這個詳細的解答。我能否增加一點複雜性?假設您在C列中有另一組值(並且您的排名列爲D)。如果我想用這個欄作爲打破平局的話,如果B欄中有一條平行線(例如B2也是56)。你可以使用非數組公式來做到這一點嗎? –

+0

@PaulWedlock編輯帖子以展示如何延伸到tiebreakers。請接受,如果這解決了你的問題! – selwyth

+0

謝謝!這很好用! –