VBA 中的 Exit Sub
Iqra Hasnain
2024年2月15日
我們將通過示例介紹在 VBA 中退出 sub 的不同方法。
在 VBA 中使用 Exit Sub 語句
在 VBA 中使用 Sub 時,如果出現錯誤或使用者提供了錯誤的輸入,我們可能希望退出它或阻止它進一步執行。我們也可以隨時使用 exit sub 來終止 sub。
在 VBA 中,每一行都是一行一行的執行,所以如果我們已經達到了結果或者在某個執行點所期望的響應不是我們想要的,我們可以使用 exit sub 來終止 sub。
有很多情況我們可以使用這個功能。讓我們通過一個示例,並嘗試在程式碼中間退出 sub。
示例程式碼:
# VBA
Sub roundFunc()
Dim num As Double
num = 5.468
Exit Sub
MsgBox Application.WorksheetFunction.RoundUp(num, 1)
End Sub
從上面的例子中,我在訊息框之前新增了退出子程式碼,當我們執行這段程式碼時,沒有出現任何消息框。
讓我們再舉一個使用 if-else
語句的示例。如果語句為 true
,它將執行程式碼直到結束。否則,它會破裂。
示例程式碼:
# VBA
Sub roundFunc()
Dim num As Double
num = 5.468
If Application.WorksheetFunction.RoundUp(num, 1) = 6 Then
MsgBox num
Else
MsgBox "Wrong Number"
Exit Sub
num = num + num
End If
End Sub
輸出:
當我們在處理重要資料時,想確保如果有任何錯誤或任何輸入錯誤,我們需要立即退出子,以確保沒有資料丟失或公司資料內部沒有錯誤資料。