Excel中有很多函數(shù),大家熟練使用的函數(shù)不過20個(gè)左右,其中包括文本函數(shù),日期函數(shù),統(tǒng)計(jì)函數(shù),邏輯函數(shù),數(shù)學(xué)三角函數(shù),財(cái)務(wù)函數(shù)等等,通常稍微單一的問題,單個(gè)函數(shù)就夠了,但是更多的是函數(shù)的組合應(yīng)用,或者添加必要的輔助列使公式更容易理解。
如下圖所示,從身份證中獲取出生日期和性別:
出生日期B1=DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2))
性別:C1=IF(MOD(MID(A1,17,1),2)=1,"男","女")
這些公式雖然邏輯比較簡(jiǎn)單,但輸入的時(shí)候參數(shù)太多,稍嫌繁瑣。那么能不能自己構(gòu)造一個(gè)函數(shù)呢,你如果有這樣的想法,恭喜你還有很大的進(jìn)步空間。
1、 打開EXCEL,使用組合鍵ALT+F11打開vba編輯器
2、 插入模塊,并修改名稱為“自定義函數(shù)”,不修改也不影響。
3、 在代碼區(qū)輸入下列代碼:
Function Birthday(身份證)
y = --Mid(身份證, 7,4)
m = --Mid(身份證, 11,2)
d = --Mid(身份證, 13,2)
Birthday = DateSerial(y, m,d)
End Function
Function Sex(身份證)
Sex = --Mid(身份證, 17,1)
If Sex Mod 2 = 1 Then
Sex = "男"
Else
Sex = "女"
End If
End Function
OK,回到EXCEL界面
在B1單元格輸入Bir,可以看到剛才構(gòu)建的自定義函數(shù)已經(jīng)出現(xiàn)了,我們可以輸入完整名稱,或直接雙擊出現(xiàn)的函數(shù)名
在輸入完函數(shù)名稱后,可以按Ctrl+Shift+A,調(diào)出函數(shù)的參數(shù)說明,任何函數(shù)都可以用這個(gè)命令。
這時(shí),只要我們用鼠標(biāo)選擇A1就可以了,只有一個(gè)參數(shù)。
同理C1=SEX(A1)
VBA自定義函數(shù)格式:
Function 函數(shù)名(參數(shù)1,參數(shù)2,…)
……
……
……
End function
相關(guān)鏈接可參考其它文章:
聯(lián)系客服