← Excel 公式課程

FIELD NOTES / Excel 公式教學

RANK.EQ 計算名次與同分排名

Excel 公式教學發布:作者:茂伯預估 6 分鐘閱讀

學會計算指定分數在整份成績表中的名次,並理解同分時共享名次、下一個名次會跳號。

本文目錄

本教學由作者茂伯編寫,並由作者在 Windows 版 Microsoft 365 與 Excel 2021 實際操作驗證。

學會計算指定分數在整份成績表中的名次,並理解同分時共享名次、下一個名次會跳號。你會分清楚要排名的分數與比較範圍,使用零表示高分優先,認識固定範圍的錢字符號,最後逐筆核對七人的排名。

什麼時候會用到

  • 成績或業績清單需要高分優先排名時,將每筆數值與同一份完整名單比較;同分者共享名次,讓報表的並列規則清楚一致。

  • 處理時間或費用需要較小值優先時,把排序方向設為1,依同樣的名次規則比較。先明確定義優先方向,避免對同一個名次作相反解讀。

適用版本

  • 本課可在 Microsoft 365、Excel 2024、Excel 2021、Excel 2019 與 Excel 2016 使用,官方函數頁列有這些版本。

  • 本課使用一般儲存格參照,輸入完成按 Enter 即可;不需額外增益集,也不用特殊陣列按鍵。

先準備範例資料

開啟空白活頁簿,依下表輸入對應儲存格。表中「(空白)」代表儲存格留空,請勿輸入括號內的文字。

列 A B
1 學生 分數
2 小安 88
3 小柏 95
4 小晴 72
5 小德 95
6 小恩 83
7 小芳 90
8 小光 78
  • A1:B8是七位學生與分數。主題目要查小安,因此第一個參數取B2的88;比較對象仍是B2:B8所有七筆,包含小安自己。

  • B3與B5都是95分,代表兩位學生同分,不是重複輸入。它們都會是第1名;下一個90分是第3名,沒有第2名。

  • 主公式$B$2:$B$8的錢字符號是固定參照標記,不是貨幣單位。每個B與列號前都保留$,讓複製公式時比較名單不移動。

  • B2到B8所有分數都用純數字,姓名只做識別。主題目最後的0表示由高到低;不能因0看似空值就刪掉或打成文字。

輸入這個公式

在 E2 輸入以下公式,按 Enter。

=RANK.EQ(B2,$B$2:$B$8,0)

輸入位置:E2  正確結果:4

語法與引數

=RANK.EQ(number,ref,[order])

引數就是交給函數處理的資料或設定。語法中的 [ ] 表示可以省略,輸入公式時不要打出方括號或省略號。

number 必要。要查名次的數字,本例B2。這個參數指定一位學生的分數,不是要比較的整欄,也不是他的列號。

ref 必要。用來比較的完整數字清單,本例$B$2:$B$8。範圍內非數字會略過;每位學生應與同一範圍比較,名次才有一致基準。

[order] 選填的排名方向。0或省略表示由大到小,最高數字第1;任何非0數字表示由小到大,本課用1。方括號是語法說明,不輸入公式。

公式使用半形標點;部分地區設定以分號分隔引數,請依 Excel 的提示調整。

照著做並核對畫面

  1. 新增一張空白工作表,點選 A1,依資料表輸入到 B8。第一列是標題,第2至第8列才是七筆紀錄;數字欄只輸入數字,單位留在標題或說明中。
  2. 在公式列左側的名稱方塊輸入 A1:B8,按 Enter 檢查資料的位置。確認B2是88,B3與B5都保留95;同分是本課的必要設定。 若貼上後擠在同一格,先重新分欄輸入,確認每個欄位各占一欄。
  3. 點選 E1,輸入「小安的名次」。再點選 E2,確保結果放在原始資料右側,不覆蓋資料,也不把 E2 自己包含在計算範圍內。
  4. 切換半形英數輸入,在 E2 完整輸入 =RANK.EQ(B2,$B$2:$B$8,0)。輸入完成先核對函數拼字、冒號與左右括號,再按 Enter;請勿把語法說明中的方括號輸入公式。
  5. 確認 E2 顯示 4,再重新點選 E2。公式列應顯示 =RANK.EQ(B2,$B$2:$B$8,0),儲存格則顯示答案;若答案不同,先核對資料與範圍,不要直接把答案數字覆寫進 E2。
RANK.EQ 範例資料及公式結果的 Excel 網頁版實際操作畫面

圖 1 Excel 網頁版實際操作畫面。Windows 桌面版工具列外觀可能不同。

結果解讀

  1. 由高到低排出95、95、90、88、83、78、72。兩個95占前兩個位置,但並列採用共同的最前名次,所以都列第1。

  2. 兩筆95之後,90排在第3個位置,因此是第3名。名次順序為1、1、3、4、5、6、7,不是1、1、2、3、4、5、6。

  3. 小安的88前面有三筆更高分,分別95、95、90,因此他的名次為3+1=4,E2顯示4。

  4. 照原表順序核對七人的名次:小安4、小柏1、小晴7、小德1、小恩5、小芳3、小光6。同分共享名次,但仍占用了兩個資料位置。

  • 同分共享該組最前面的名次,不會回傳平均名次。因此兩位95分都為1,不是1.5;90分接著為3,跳過2是預期行為。

  • order=1會改成低分優先。以原資料的兩筆95為例,由低到高時都列第6,後面不另出現第7;並列規則不因方向改變而取消。

  • 固定比較範圍很重要。向下複製主公式時,B2應跟著變成B3,但$B$2:$B$8不變;若兩者一起下移,每個人就會跟不同名單比較。

常見錯誤

  1. 90分以為應是第2名

原因:把兩筆95當成只占一個資料位置,誤用不跳號的名次方式。 處理:逐筆排出95、95、90,90排在第3個位置;本函數並列後會跳號,因此第3名正確。

  1. 最低分顯示第1名,與期待相反

原因:最後的order設成1,使用由低到高方向。 處理:如果要高分優先,將E2最後參數改成0;先在標題寫清楚排名方向。

  1. 往下複製後名次不一致

原因:比較範圍沒有固定,複製後起訖列一起往下移動。 處理:在公式列將比較範圍改為$B$2:$B$8,保留第一個B2不固定,再重新複製。

自己試一次

先遮住解答,試著自己輸入公式並預測結果。每題都從上方的原始資料重新開始,結果放在題目指定的儲存格。

練習 1 找90分的名次

先恢復本課原始資料。在E2查B7的小芳,維持高分優先。

參考公式:

=RANK.EQ(B7,$B$2:$B$8,0)

正確結果:3

解答 1 90分前面有兩筆95,不是只有一種較高分數。

解答 2 兩筆更高分再加1,所以答案3,沒有任何人是第2名。

練習 2 查另一位同分者

先恢復本課原始資料。在E2查B5的小德,維持高分優先。

參考公式:

=RANK.EQ(B5,$B$2:$B$8,0)

正確結果:1

解答 1 B5是95分,與B3的小柏相同。

解答 2 兩位同分者都取得共同的最前名次1,原表先後順序不會拆開同分名次。

練習 3 反向查看最高分

先恢復本課原始資料。在E2查B3的95分,但這次使用由低到高方向。

參考公式:

=RANK.EQ(B3,$B$2:$B$8,1)

正確結果:6

解答 1 由小到大為72、78、83、88、90、95、95,共有五筆比95小。

解答 2 五筆較小值加1,所以兩筆95都為第6名,不分成第6與第7。

官方參考

Microsoft Support:RANK.EQ 函數