我會用excel的排序,但若同分的會自動排名(例如同是90分的三人,名次是2,3,4名,我要三個皆為第三名,(2+3+4)/3),而無法排成同名次,請問是否有函數或是更好的方法來排呢?別告訴我用手動的,麻煩excel高手幫我解答,謝謝。
2006-09-19 07:53:03 · 4 個解答 · 發問者 pyhung 1 in 電腦與網際網路 ➔ 軟體
whitefox大師的答案應是我想要的,但若同分的人數是奇數的,則名次會出現 .5,那要怎麼改呢?
2006-09-25 05:35:22 · update #1
假設成績放在 B1 ~ B5則在 C1 輸入公式=RANK(B1,B$1:B$5,0)+((COUNT(B$1:B$5)+1-RANK(B1,B$1:B$5,0)-RANK(B1,B$1:B$5, 1))/2)再把公式往下複製到 C2 ~ C5 即可。公式是參考 Excel 2003 Help 中的說明。
2006-09-19 13:32:05 補充:
上面的公式是用數學推導出來的。我自己用邏輯方法推出來的公式如下,一樣放在 C2=IF(COUNTIF($B$1:$B$5,$B1)=1,RANK($B1,$B$1:$B$5),RANK($B1,$B$1:$B$5)+(COUNTIF($B$1:$B$5,$B1)-1)/2)最後結果是一樣的。
2006-09-19 09:02:55 · answer #1 · answered by whitefox 7 · 0⤊ 0⤋
我不敢把以上高手的理論都推翻,
但我有一個更簡單的方法:
把你的成績群組起來,比如說是a1到a15,然後命名"群組1"
則一樣在旁邊一欄第一格輸入:
rank=(a1,群組1)
如此一來同分數同名,排到最後最後一名就是總人數,了解嗎?
例:
100 1
99 2
98 3
98 3
98 3
90 6
88 7
88 8
77 9
以上有9個分數
2006-11-21 20:54:45 · answer #2 · answered by Achilles 2 · 0⤊ 0⤋
假設成績放在 B1 ~ B5
則在 C1 輸入公式
=ROUNDDOWN(RANK(B1,B$1:B$5,0)+((COUNT(B$1:B$5)+1-RANK(B1,B$1:B$5,0)-RANK(B1,B$1:B$5, 1))/2),0)
再把公式往下複製到 C2 ~ C5 即可。
加上ROUNDDOWN可以避免出現小數
例如最高兩個同分
原來的名次會顯示 1.5 , 1.5
加上ROUNDDOWN會顯示 1 , 1
若是使用ROUNDUP會顯示 2 , 2
2006-09-27 18:46:01 補充:
放在意見是因為
whitefox大師已經把答案都寫出來了
我只是幫忙補充他疏漏的地方而已
2006-09-25 11:43:12 · answer #3 · answered by 阿信 6 · 0⤊ 0⤋
在EXCEL中,您可利用RANK這函數來排名次
2006-09-19 08:05:53 · answer #4 · answered by tania 2 · 0⤊ 0⤋