gpt4 book ai didi

excel - Sub 之外的 Excel VBA 中的错误处理

转载 作者:行者123 更新时间:2023-12-04 21:15:51 25 4
gpt4 key购买 nike

我知道我的标题有点困惑,但这是我遇到的问题。我基本上有一张用作各种包装的纸。它能够按顺序运行大量宏,这是通过用户窗体完成的。基本上,您选中该框,如果选中,它将运行宏。我想要做的是,如果有错误,我希望它返回它所在的 sub。

我的第一个想法是在我的 if 语句中运行 subs 以放置 On Error 语句的复选框,但这不起作用,因为错误处理转到被调用的 sub 并忽略它之前的内容。

我应该怎么办?这可能吗?

最佳答案

你可以这样做:

Sub ErrorHandler()
On Error GoTo ErrHandler
Call Proc1
Call Proc2
Call Proc3
Exit Sub
ErrHandler:
MsgBox Err.Source & vbCrLf & Err.Description
End Sub


Sub Proc1()
On Error GoTo ErrHandler
' Your code block start

' Your code block end
Exit Sub
ErrHandler:
Err.Raise 513, "Proc1", "Customer Error Message 1|" & Err.Description
End Sub


Sub Proc2()
On Error GoTo ErrHandler
' Your code block start

' Your code block end
Exit Sub
ErrHandler:
Err.Raise 513, "Proc2", "Customer Error Message 2|" & Err.Description
End Sub


Sub Proc3()
On Error GoTo ErrHandler
' Your code block start

' Your code block end
Exit Sub
ErrHandler:
Err.Raise 513, "Proc3", "Customer Error Message 3|" & Err.Description
End Sub

关于excel - Sub 之外的 Excel VBA 中的错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39280752/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com