VBA 中的 Exit Sub
Iqra Hasnain
2022年7月12日
我们将通过示例介绍在 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
输出:
当我们在处理重要数据时,想确保如果有任何错误或任何输入错误,我们需要立即退出子,以确保没有数据丢失或公司数据内部没有错误数据。