使用 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
就會把比較小的數值排在比較前面,也就是說誤差值比較小的設備表現是比較好的。