有小夥伴留言說想了解中國式排名,今天我們就來講解這個問題。
看到題目,可能有些朋友會産生一個疑問,什麼是中國式排名?通過一個例子來看看:
C列是使用了RANK函數得到的名次,RANK函數的用法很簡單:=RANK(要排名的數據,參加排名的區域,升序或者降序)(第三參數為0或者忽略,則為降序,非零值,為升序),D列是中國式排名的結果。直觀的看是有些區别,但還是不明白區别在哪,别急,讓我們按照成績由高到低排序以後再看看:
看明白了嗎?
區别就是當出現了相同名次的時候,普通的排名會跳過幾個名次,C列中沒有第三名和第四名,而中國式排名的名次是連續的,這種排名方式更加符合國人的習慣,因此也被稱作中國式排名。
那麼問題來了,既然使用RANK函數的結果不是中國式排名,要如何才能得到更加符合咱們自己習慣的排名結果呢?下面就為大家介紹三種得到中國式排名的方法:
一、SUMPRODUCT+COUNTIF的公式方法
第一種方法需要用到SUMPRODUCT和COUNTIF這兩個函數配合完成,D2中輸入公式為:
=SUMPRODUCT((B$2:B$15>=B2)/COUNTIF(B$2:B$15,B$2:B$15))
下面對這個公式的原理進行說明:
首先看公式的第一部分内容:
B$2:B$15>=B2
判斷B2到B15中的成績是否大于等于當前的B2成績,如果成立返回TRUE,否則返回FALSE。選中公式的這部分内容,然後按F9即可看到以下結果。
接下來我們繼續看公式的第二部分内容:
COUNTIF(B$2:B$15,B$2:B$15)
這是對B2到B15區域的每個成績進行統計,如B2的97分一共有3個,B5的97分也有3個,B8的99分有1個......依此類推。選中公式的這部分内容,按F9同樣可以看到統計結果:
通過以上的運算後,最終得到了兩組邏輯值結果,如下圖所示:
現在要對兩組數據分别一一對應進行計算:第一個TRUE除以3,第二個FALSE除以1,第三個FALSE除以1......依此類推。在Excel計算中,TRUE相當于1,而FALSE相當于0。運算後最終得到了一組結果,如下圖所示:
最後由SUMPRODUCT函數進行求和,得到當前成績的排名,其他單元格下拉填充公式即可。
這個公式的思路實際上是統計了大于等于當前成績的個數。
其實在實際應用中,還有一個相對簡單的公式解法,隻需要用到if函數,不過需要進行兩步簡單的操作來配合,下面就看看第二種可以得到中國式排名的方法。
二、if函數+簡單操作的方法
首先我們按照成績進行降序排序:
然後在第一個成績的排名處輸入1:
接下來在第二個成績處輸入公式:
=IF(B3=B2,D2,D2+1),下拉即可。
為什麼要這樣填寫呢?
其實很簡單,我們隻是做了一個判斷,比較成績中的第二個數值與第一個數值是否相等,如果相等就返回與第一個排名一樣的排名即“1”,如果不等就在第一個排名基礎上返回“+1”即“1+1”,以此類推!
雖然我們多做了一步排序,但是這兩步操作的學習成本與上面那一長串難懂的函數相比是不是簡單多了?!
除了以上兩種方法之外,最後這一個方法就是利用數據透視表來完成中國式排名,相對于使用公式的方法,透視表簡單!易懂!!高效!!!
讓我們一起來看操作步驟吧!
三、數據透視表的方法
(透視表的界面根據大家使用軟件版本的不同可能略有差異,以Excel2010版進行演示。)
插入數據透視表,将透視結果放置在現有工作表中,點擊确定:
将姓名拉到列字段,成績拉到值字段:
再拉一次成績到值區域:
接下來鼠标在F列透視表值區域右鍵,選擇“降序排列”:
鼠标再選擇F列透視表值區域點擊右鍵,點擊“值顯示方式”-“降序排列”:
出現提示時,直接點擊确定:
完成後效果如圖:
進行排版完成後的結果(具體操作步驟在文末動圖中):
整個操作如果熟練的話用不了一分鐘就可以搞定。
完整的操作和排版過程可以參考動畫演示:
今天的教程就到這裡,記得自己操作練習哦!
原創:老菜鳥(未經同意,請勿轉載)
來源:部落窩教育
有話要說...