嗨,各位同學們好呀!我是小E~
生活中處處有排名,成績要排名,公司要排名,連個人績效也要排名。
有人甚至說,優勝劣汰法則的最好應用就是排名。
今日,小E就帶大家一起來學習,Excel 中可以解決排名問題的函式。
簡單美式排名
說到排名,RANK 函式可謂是根正苗紅的嫡系血脈。
計算一列數字的簡單美式排名,我們通常使用 RANK 函式來完成,因為其用法簡單便捷。
如下圖,我們需要計算廣州市各區,土地出讓面積的排名,我們只需在 C2 單元格中輸入如下公式:
=RANK(B2,$B$2:$B$11,0)
並拖動下拉即可:
仔細觀察這組排名,你會發現,這組排名中,有 2 個第 2 名,之後卻沒有第 3 名,直接跳到第 4 名。
這就是所謂美式排名,即每一數值取最優排名,相同排名會向下佔用,使得排名值不連續。
簡單排名中還有兩種特殊的情況:
❶ 排名單元格區域不連續,即多列排名問題,我們需要把不同連續區域放在括號內,作為 RANK 函式的第二個引數 ref。
=RANK(B2,($B$2:$B$6,$E$2:$E$6),0)
❷ 排名單元格區域,分佈在不同的工作表相同位置,即多表排名問題。第二個引數 ref 需直接引用連續的表格。
=RANK(B2,表 1:表 2!$B$2:$B$6,0)
在數學邏輯上我們可以認為,所謂美式排名就是取數字列表中,大於(或小於)當前值的數值個數+1 作為其排名值。
這裡列表可以視為計數區域,大於(或小於)當前值可以視為計數條件,因此簡單美式排名可以用條件計數函式 COUNTIF 來解決。
如果計數條件為">"&B2,即取大於當前值的單元格數目,則為降序排名。
=COUNTIF($B$2:$B$11,">"&B2)+1
反之,如果要使數值越大排名越靠後(升序排名),則使用的計數條件應為"<="&B2。
有的小夥伴會問:公式最後的+1 怎麼理解?
以降序排名為例:
有 0 個值大於當前值,COUNTIF 函式的計數結果為 0,顯然,0 不能作為當前值的排名,當前值排名應為 0+1,即第一名。
同理,滿足條件的單元格為 1,則有 1 個值大於當前值,所以當前值排名應為 2,即 1+1。
這就是 COUNTIF 函式計算排名是需要+1 的原因。
與美式排名對應的中國式排名,其資料邏輯則是取滿足條件的不重複值個數+1,這一點我們在以後篇章中會詳細論述,此處暫且按下不表。
分組美式排名
如果給簡單美式排名加點難度,那就要說到分組排名問題了。
所謂分組排名,是根據一定條件將資料分類為不同的組別,再進行排名。
現實中的班級排名、區域排名和部門內部排名就是典型的分組排名問題。
分組排名問題能夠用到的函式很多,這裡我們介紹其中兩個最常見的函式:COUNTIFS 函式和 SUMPRODUCT 函式。
▋COUNTIFS 函式法
在簡單條件排名中,我們提到,所謂美式排名問題,就是大於(或小於)當前值的單一條件計數問題,可以使用 COUNTIF 函式。
以此類推,分組排名就是既滿足數值條件,又滿足分類條件的多條件計數,因此,它可以用 COUNTIFS 函式來完成。
瞭解 COUNTIFS 函式的基本用法後,分組美式排名公式就躍然紙上了。只需將分組條件作為 range2 和 criteria2 即可。
=COUNTIFS($C$2:$C$11,">"&$C2,$A$2:$A$11,$A2)+1
▲ 左右滑動檢視
這個公式不難理解,即在簡單美式排名 COUNTIF 公式的基礎上,再加上城市分組條件,即求相同城市(廣州)且交易面積大於當前值(A2)的單元格數目。
▋SUMPRDUCT 函式法
熟悉 SUMPRODUCT 的小夥伴一定知道,這個函式十項全能,求和計數查詢樣樣精通,自然也能夠輕鬆搞定分組美式排名問題。
SUMPRODUCT 函式運用陣列運算的方式,將兩個判斷條件得到的邏輯值陣列相乘並求和,從而得到同時滿足兩個條件的單元格數目,這樣的計算方法與 COUNTIFS 函式異曲同工。
此處,小E不再詳細拆解,有興趣的小夥伴可以戳文末 SUMPRODUCT 的相關教程連結,定能最終理解並掌握它。
=SUMPRODUCT(($A$2:$A$11=$A2)*($C$2:$C$11>$C2))+1
▲ 左右滑動檢視
以上,就是小E分享的四個排名函式:
❶ 可跨表可多區域排名的 RANK 函式;
❷ 運用數學邏輯曲線救國的 COUNTIF 函式;
❸ 分組排名的多條件計數函式 COUNTIFS;
❹ 十項全能樣樣精通的 SUMPRODUCT。
你學會這四個排名函數了嗎?年終總結一定用得上,快將它們加入你的技能包吧!