13 型態不符合
果然是 值的傳遞之問題
建議
Function getMMdays(pnYear, pnMonth)
請改成
Function getMMdays(pnYear As Integer , pnMonth As Integer)
Visual Basic 引數傳遞方式預設為 ByRef
如果不指定資料型態或物件型態,且模組中沒有Deftype 陳述式,變數的預設型態為 Variant。
型態不符合
http://yes.nctu.edu.tw/VB/B2_Code/Err_13.htm
getMMdays(CInt(nYear.Text), CInt(nMonth.Text))
改成
getMMdays(Val(nYear.Text), Val(nMonth.Text))
Dim x As Integer
x = Val("1.2")
結果 x=1 而不是 1.2
所以與 Cint 有同樣效果