對(duì)于類似于期中、期末這樣的重要考試,很多學(xué)校從一開始就會(huì)按照年級(jí)把各平行班的學(xué)生混合編排考場(chǎng)、座號(hào)并統(tǒng)計(jì)成績(jī)。這就給我們帶來了困難,比如考場(chǎng)號(hào)如何確定?座號(hào)如何確定?各學(xué)生的名次及在自己班內(nèi)的名次如何排定?這些工作,通過多次排序和復(fù)制粘貼數(shù)據(jù),肯定可以完成。但是,面對(duì)動(dòng)輒上千的數(shù)據(jù)行,顯然又太麻煩了。那么,在WPS2010的表格工具中,能不能用相對(duì)比較簡(jiǎn)單的辦法來解決問題呢?答案顯然是肯定的。
一、考場(chǎng)號(hào)的確定
原始的數(shù)據(jù)表如圖1所示。
圖1
根據(jù)表格現(xiàn)在的排序,每30名學(xué)生安排一個(gè)考場(chǎng)??紙?chǎng)號(hào)依次為“1”、“2”……。按照這些要求,我們只需要將鼠標(biāo)定位于D2單元格,輸入公式 “=ROUNDUP((ROW()-1)/30,0)”,回車后,再選中D2單元格,向下拖動(dòng)其填充句柄至最后一行D1302單元格,就可以得到每位學(xué)生的考場(chǎng)號(hào)了。30人一個(gè)考場(chǎng),不會(huì)錯(cuò)的。效果如圖2所示(為了觀察效果,隱藏了部分行)。
圖2
ROUNDUP函數(shù)的作用是對(duì)數(shù)值向上取最接近的整數(shù),由于第一個(gè)學(xué)生的數(shù)據(jù)位于工作表的第二行,所以,我們只需要將數(shù)據(jù)所在行數(shù)減1之后再除以30,把所得的結(jié)果用ROUNDUP函數(shù)向上取整數(shù)就可以了。
二、座號(hào)的確定
座號(hào)其實(shí)就是不斷地重復(fù)從1到30的填充。但這個(gè)工作如果復(fù)制粘貼的話也挺麻煩。因此,我們還是用公式來完成。在E2單元格輸入公式“=COUNTIF(D$2:D2,D2)”,向下拖動(dòng)填充句柄到E1302單元格,就可以得到各考場(chǎng)的座號(hào)了。效果如圖3所示。
圖3
公式 “=COUNTIF(D$2:D2,D2)”的意思是統(tǒng)計(jì)在D$2:D2單元格區(qū)域等于D2單元格的單元格數(shù)量。在D3單元格,公式就會(huì)變成 “=COUNTIF(D$2:D3,D3)”,以下依此類推。由于D列的考場(chǎng)號(hào)每30個(gè)單元格號(hào)數(shù)相同,所以,在E列就會(huì)得到1至30的自然序列了。
三、混編名次的排定
成績(jī)按考場(chǎng)號(hào)錄入后,需要排定名次。比較簡(jiǎn)單的是混編名次,也就是忽略了班級(jí)的界限的排名次。使用RANK函數(shù)可以輕松解決問題。本例中,將鼠標(biāo)定位于J2單元格,輸入公式“=RANK(I2,$I$2:$I$1302)”,拖動(dòng)其填充句柄向下復(fù)制至最后一行I1302,松開鼠標(biāo),所有學(xué)生的名次就可以得到了。
四、班內(nèi)名次的排定
在不對(duì)工作表進(jìn)行排序的情況下,想得到學(xué)生的班內(nèi)名次,RANK函數(shù)就力不從心了。我們必須同時(shí)考慮到學(xué)生所在的班級(jí)以及其分?jǐn)?shù)所處的位置,SUMPRODUCT函數(shù)此時(shí)正可以大顯身手。
將鼠標(biāo)定位于K2單元格,輸入如下公式“=SUMPRODUCT(($B$2:$B$1302=B2)*($I$2:$I$1302>I2))+1”。完成后仍然拖動(dòng)其填充句柄至K1302單元格,看看,是不是已經(jīng)得到所有學(xué)生的班內(nèi)成績(jī)了?如圖4所示。
圖4
關(guān)于公式“=SUMPRODUCT(($B$2:$B$1302=B2)*($I$2:$I$1302>I2))”我們可以簡(jiǎn)單地理解為“計(jì)算在B2:B1302單元格區(qū)域等于B2的且在I2:I1302單元格區(qū)域大于I2的單元格數(shù)量”,很容易明白,I2如果是本班內(nèi)的最高分的話,這個(gè)數(shù)量就為“0”,所以把它加1正可以作為在班內(nèi)的名次。