當前位置:首頁(yè) > 問(wèn)答 > 正文內容

如何在excel中對學(xué)生成績(jì)進(jìn)行排名?

印刷廠(chǎng)直印●彩頁(yè)1000張只需要69元●名片5元每盒-更多報價(jià)?聯(lián)系電話(huà):138-1621-1622(微信同號)

我用中國式排名為例來(lái)說(shuō)明吧,我們先來(lái)了解一下什么叫中國式排名?我就舉個(gè)最簡(jiǎn)單的例子。

比如,你們班級一共 50 個(gè)人,期末考試有 49 個(gè)人考了 100 分,你考了 90 分,那么按國際慣用的排名法則:49 個(gè)人并列第一,你第 50 名。如果按中國式排名:49 個(gè)人并列第一,你第 2 名。是不是瞬間和諧了許多?

既然中國式排名是中國特色,那么,Excel 現有的 rank 函數顯然是按老美的規則來(lái)排名的,如果要統計中國式排名,就得用到些技巧。

本文教大家 4 種方法,由淺入深、一網(wǎng)打盡,總有一款適合你。

案例:

下表的高考總分,分別有兩個(gè)分數出現重復,請用中國式排名給這些學(xué)生排名次。

解決方案:

用 if 排名用 vlookup 排名用 sumproduct(sum 家族的函數都可以,比如 sum+if,或者 sumif,本文以神級函數 sumproduct 舉例)+ countif 排名用數據透視表排名方案1:用 if 排名

1. 開(kāi)始中國式排名前,我們首先來(lái)看一下普通排名,可以用 rank 函數,也可以用如下 sumproduct 公式:

=SUMPRODUCT((C2$C$2:$C$15)*1)+1

公式釋義:

sumproduct 作為神級函數,我在各種案例中多次、反復講解過(guò),比較完整的可參見(jiàn) Excel函數(四) – sumproduct函數計數、排名、求和等等本公式中,C2$C$2:$C$15:用 C2,即當前行的總分與一整列的分數依次比較,判斷 C2 是否比別人小根據判斷結果會(huì )得到一個(gè)由 true 和 false 組成的數組,true 相當于 1,false 相當于 0用 F9 看一下計算結果(如下圖),就非常直觀(guān)容易理解

SUMPRODUCT((C2$C$2:$C$15)*1):sumproduct 是積求和函數,因此會(huì )用數組中的 1 和 0 依次與 1 相乘,最后求和,也就是說(shuō),有幾個(gè)總分比自己高的,就得出幾+1:如果有 5 個(gè)比自己高,那么自己排名第 6,所以要 +12. 現在開(kāi)始中國式排名步驟,先按 C 列的高考分數由高到低排序

3. 在 E2 列輸入“1”,在 E3 列輸入以下公式,下拉即可:

=IF(C3=C2,E2,E2+1)

公式釋義:

如果上下兩行分數相等,則排名相同如果分數不等,那么不管上一行的分數有沒(méi)有重復值,排名 +1

方案2:用 vlookup 排名

1. 按 C 列的高考分數由高到低排序

2. 將 C 列復制粘貼到旁邊的輔助列,比如 J -- 選中 J 列 -- 選擇菜單欄的 Data -- Remove Duplicates -- 在彈出的對話(huà)框中勾選“高考分數”-- OK

3. 現在 J 列是去除重復項的分數

4. 在 K 列用 rank 函數對 J 列排名,公式如下:

=RANK(J2,$J$2:$J$12)

5. 在 F2 輸入以下公式,下拉即可,目的是用 vlookup 函數去查找 C 列的分數所對應的 K 列去重后的排名,即中國式排名:

=vlookup(C2,J:K,2,0)

方案3:用 sumproduct + countif 排名

1. 在 E2 單元格輸入以下公式,下拉即可:

=SUMPRODUCT((C2$C$2:$C$15)*(1/COUNTIF($C$2:$C$15,$C$2:$C$15)))+1

公式釋義:

* 前面部分之前解釋過(guò)了,不贅述重點(diǎn)來(lái)看這一段 COUNTIF($C$2:$C$15,$C$2:$C$15):Countif 統計數組中每個(gè)數的重復次數,即先用 C2 歷遍整個(gè)數組,得到重復次數;再用 C3 歷遍整個(gè)數組,得到重復次數……依次類(lèi)推1/COUNTIF($C$2:$C$15,$C$2:$C$15):用 1 除以數組中每個(gè)數的重復次數,等到一組最大值為 1 的數組當總分重復 n 次時(shí),通過(guò) 1/n,把重復次數拆分成了 n 等分下圖是用 F9 查看這段公式后顯示的值,便于大家理解

SUMPRODUCT((C2$C$2:$C$15)*(1/COUNTIF($C$2:$C$15,$C$2:$C$15))):就是用一組 1 和 0 組成的數組,與一組 1 和小數組成的數組積求和0 * 任何數為 0,忽略不計;1 * 1 也好理解當第二個(gè)值為分數時(shí),比如1/3(上圖中顯示為0.33333333……),表示重復了 3 次,而且 1/3 會(huì )在數組中出現三次,sumproduct 對它積求和即1*1/3+1*1/3+1*1/3=1,也就是不管重復幾次,最后結果都只統計 1 次因此實(shí)現了中國式排名的邏輯

+1:比自己大的個(gè)數 +1,即自己的排名方案4:用數據透視表排名

1. 制作數據透視表:點(diǎn)擊表格中的任意單元格 -- 選擇菜單欄的 Insert -- PivotTable

2. 默認將數據透視表放入一個(gè)新 sheet -- 在右邊的對話(huà)框中將“姓名”拖動(dòng)到 Rows 區域 -- 將“高考總分”拖動(dòng)到 Values 區域,拖動(dòng)兩次:一列用來(lái)顯示總分,另一列用來(lái)顯示排名

3. 回到數據透視表,隨意選中第 2 個(gè)“高考總分”列的任意單元格 -- 右鍵單擊 -- 選擇 Show Values As -- Rank Largest to Smallest

4. 在彈出的對話(huà)框中點(diǎn)擊 OK

5. 現在 C 列已經(jīng)變成了中國式排名了

6. 我們再對 C 列排下序:選中 C 列的任意單元格 -- 右鍵單擊 -- 選擇 Sort -- Sort Largest to Smallest

7. 然后把 C 列的標題改成“排名”,就完成了

收藏0

發(fā)表評論

訪(fǎng)客

看不清,換一張

◎歡迎參與討論,請在這里發(fā)表您的看法和觀(guān)點(diǎn)。
中文字幕在线永久91_国产一级AV不卡毛片_亚洲日本中文字幕在线四区_日韩黄片在线大全