雖然我們可以利用排序功能計算每個同學的排名,但排序後會導致座號順序錯亂,又要多幾個步驟來還原,資料少時還好,資料多時就顯得不夠效率,在 Calc 中提供 Rank 這個函數計算排名,只要設定好,資料再多也不怕,現在讓我們學習 Rank吧。
首先先讓我們看看 Rank 函數的語法:
RANK(number; ref; Order)
number 是要決定其排列等級的數值。
ref 是參照欄位,也就是排序的依據。
Order 是排序的類型,看是由大排到小或是由小排到大,製作成績單用內定值就可以,不用特別設定。
現在讓我們練習 Rank 函數的應用吧
- 選取儲存格 I3
- 點選Fx插入函數
- 選擇 RANK
- number(C) 請輸入 I3
- ref(D)請輸入 H3:H12
- 按下確定,完成排名
接著,我們讓我們試試看複製公式會發生甚麼情況:
怎麼回事,名次亂七八糟,而且不對,究竟出了甚麼問題?
讓我們逐一檢視I3~I12的儲存格內的函數設定,我們發現這些儲存格在資料編輯列上所顯示的公式分別為:
=RANK(H3;H3:H12)
=RANK(H4;H4:H13)
=RANK(H5;H5:H14)
=RANK(H6;H6:H15)
=RANK(H7;H7:H16)
=RANK(H8;H8:H17)
=RANK(H9;H9:H18)
=RANK(H10;H10:H19)
=RANK(H11;H11:H20)
=RANK(H12;H12:H21)
我們發現,當填滿空點往下拖曳時,函數內的設定儲存格也會往下跟著自動改變(H3--->H4;H3:H12--->H4:H13......),這就是所謂的相對參照。
以I12的=RANK(H12;H12:H21)來看:
我們會發現I12是拿儲存格H12和H12:H21(木人加上底下的九個空格)來做比較。我們很容易發現,自己和自己比,無論怎麼比都是第一名。
那麼,我們要如何修正這個函數的設定呢?我們在設定好儲存格I3之後先要做一個簡單的修改。我們必須讓=RANK(H3;H3:H12)裡面的H3:H12(全班總分)能夠固定不動,也就是所謂的絕對參照。之後再複製公式就可以了。
要如何讓H3:H12固定不動呢?我們再度檢視I3~I12的儲存格內的函數設定發現其實H在這裡是不會變的,因此我們只要讓3和12不要改變即可。此時我們可以分別在3和12的前面加上$的符號讓整個公式變成=RANK(H3;H$3:H$12)就可以了。接著在使用填滿控點往下拖曳到I12就完成所有的名次排序。
你可以試著再檢視I3~I12內的公式,他們分別已經變成:
=RANK(H3;H$3:H$12)
=RANK(H4;H$3:H$12)
=RANK(H5;H$3:H$12)
=RANK(H6;H$3:H$12)
=RANK(H7;H$3:H$12)
=RANK(H8;H$3:H$12)
=RANK(H9;H$3:H$12)
=RANK(H10;H$3:H$12)
=RANK(H11;H$3:H$12)
=RANK(H12;H$3:H$12)
沒有留言:
張貼留言