當前位置:成語大全網 - 書法字典 - vba中的on錯誤問題

vba中的on錯誤問題

在VBA,有兩種主要的方法來捕捉錯誤。

第壹種捕獲方法:

1,語法:

出錯時轉到Err_Handle?如果遇到錯誤,跳轉到錯誤處理代碼。

報表xxxxx

Exit Sub/Function(如果沒有這條語句,即使沒有錯誤,也會執行錯誤處理語句)。

Err_Handle:語句?xxxxxx

2.例如:

子查找編號()?這段代碼查找電子表格中是否有數字12。

出錯時轉到Err_Handle

MsgBox單元格。找到(12)。地址

出口接頭?如果沒有這個exit語句,它將壹直被執行。

錯誤句柄:

MsgBox("號碼不存在")

末端接頭

(1),電子表中的數據和代碼

(2)查找12的結果:

(3)查找13的結果:

第二種捕獲方法:

1,語法:

出錯時繼續下壹步?如果遇到錯誤,不管錯誤如何都繼續執行,但是如果嵌套了其他錯誤處理語句,這些錯誤處理語句還是會按照自己的規則運行。

報表xxxx

“出錯時轉到0”結束錯誤捕獲。

2.示例代碼:

子查找編號()

將I標註為整數

出錯時繼續下壹步?遇到錯誤並向下執行。

MsgBox單元格。找到(13)。地址

出錯時轉到Err_Handle

i = 10 / 0?將跳轉到錯誤處理語句,而不是運行Exit sub。

出口接頭

錯誤句柄:

MsgBox i

出錯時繼續下壹步

末端接頭

3.結果的描述和圖例:

excel表格中沒有數字13,但不會出現錯誤,也不會彈出。

出錯時繼續下壹步,然後?Err_Handle之間的代碼仍然可以起到錯誤捕獲的作用,所以會出現如下的彈出窗口:

我希望我能幫助妳,