大家知道,我們在編輯Excel工作表時(shí),除了可以用其內(nèi)置的函數(shù)處理表中的數(shù)據(jù)外,還可以根據(jù)自己的實(shí)際需要,自定義函數(shù)來處理表中的數(shù)據(jù)。
如圖1所示是一個(gè)學(xué)生基本情況登記表,學(xué)號的編制原則是:前4位是年份,第5位是初、高中代碼(1是初中,2是高中),第6位是年級代碼(1分別代表初、高一等),第7、8位是班級代碼,后面是序號。下面,我們以一個(gè)具體的實(shí)例,自定義一個(gè)函數(shù),根據(jù)學(xué)號來自動填寫班級名稱(即圖中的D列內(nèi)容)。
1.啟動Excel 2003(其它版本請仿照操作),打開相應(yīng)的工作表。
2.執(zhí)行“工具→宏→Visual Basic編輯器”命令(或者直接按“Alt+F11”組合鍵),進(jìn)入Visual Basic編輯狀態(tài)(如圖1)。
圖1編輯器
3.執(zhí)行“插入→模塊”命令,插入一個(gè)新模塊。再雙擊插入的模塊,進(jìn)入模塊代碼編輯狀態(tài)。
4.將下列代碼輸入其中:
Function bj(xh)
Select Case Mid(xh, 5, 1)
Case 1
bj = '初' && Mid(xh, 6, 3) && '班'
Case 2
bj = '高' && Mid(xh, 6, 3) && '班'
End Select
End Function
[友情提醒]
①上述代碼中,“bj”是函數(shù)命令,“xh”是變量名稱,二者均可以隨意修改。
②自定義函數(shù)結(jié)構(gòu)是(如果有多個(gè)變量,請用英文狀態(tài)下的逗號分隔):
Function函數(shù)名稱(變量名稱)
代碼
End Function
③使用下面的代碼,可以達(dá)到同樣的效果:
Function bj(xh)
If Mid(xh, 5, 1) = 1 Then
bj = '初' && Mid(xh, 6, 3) && '班'
Else
bj = '高' && Mid(xh, 6, 3) && '班'
End If
End Function
5.代碼輸入完成后,關(guān)閉Visual Basic編輯窗口,返回Excel編輯狀態(tài)。
6.選中D2單元格,輸入公式:=BJ(A2),再用“填充柄”將上述公式復(fù)制到D列下面的單元格區(qū)域中,班級名稱即可自動填入相應(yīng)的單元格中(參見圖2)。
圖2學(xué)生登記表