1. 程式人生 > 電腦技巧 >Excel 自動計算排名 RANK 函數教學與範例

Excel 自動計算排名 RANK 函數教學與範例

使用 RANK 函數,依照成績(分數高低)或各種數值計算排名。


問題

假設我們有以下這個 Excel 表格,我們想要依照成績算出每位學生的名次,該怎麼做?

成績資料

解法

Excel 的 RANK 函數可以依據輸入的數值,自動計算每一個數值的名次,依照分數計算排名的問題就非常適合用 RANK 函數來處理。

RANK 函數的用法如下:

=RANK(數值,所有數值範圍)其中數值就是要找出其排名的數字(也就是該學生的分數),而所有數值範圍就是所有進行排名的數值(也就是所有學生的分數)。

實際寫出來的公式就會像這樣:

=RANK(B2,$B$2:$B$8)由於我們要將公式套用至每一個學生的排名欄位,所以在指定所有數值範圍的時候,要使用絕對位置的方式($B$2:$B$8),這樣這個範圍才不會跟著跳動。計算出來的排名結果如下:

依據成績計算排名

反向排名

RANK 預設會以遞減的方式排序,也就是將數值大的排在前面,這種排序方式剛好適用於計算成績排名的問題,但是如果我們的資料是類似誤差值這樣的反面資料,數值越大代表越差的狀況,就要改用遞增的方式計算排名。

假設我們有以下這個 Excel 表格,包含各個設備的誤差值:

誤差值資料如果要根據各設備的誤差值,以遞增的方式來計算各設備的表現排名,可以在 RANK 函數的第三個參數填入 1:

=RANK(B2,$B$2:$B$8,1)這樣 RANK 就會把比較小的數值排在比較前面,也就是說誤差值比較小的設備表現是比較好的。

反向排名