gpt4 book ai didi

vba - 错误处理仅有效一次

转载 作者:行者123 更新时间:2023-12-03 00:23:46 25 4
gpt4 key购买 nike

我有一个非常简单的 VBA 代码,它应该尝试打开一个不存在的文件,将我发送到错误处理程序,然后以无限循环返回到我的代码(故意)。

但是,编译器仅在第一次捕获错误,然后在第二次传递时中断。

我已经尝试了 On Error 语句的每种组合以在第二次传递时将其发送回,但似乎没有任何效果。这是代码:

Sub TestError()
On Error GoTo errError
lblError:
On Error GoTo errError
'Code that should raise an error and send to errError
Excel.Application.Workbooks.Open ("lakdfjldkj")
Exit Sub
errError:
MsgBox "Code didn't break"
GoTo lblError
End Sub

我是否遗漏了什么,或者这是一个错误?

除非您愿意终止 Excel,或者添加额外的循环条件,否则不要测试此功能

最佳答案

使用Resume...嗯...在错误处理程序之后恢复处理。

Sub TestError()
On Error GoTo errError

'Code that should raise an error and send to errError
Excel.Application.Workbooks.Open "lakdfjldkj"
Exit Sub
errError:
MsgBox "Code didn't break"
Resume
End Sub

我已经使用这样的代码来访问某个工作表,如果找不到该工作表,则错误处理程序会创建一个具有正确名称的工作表,然后恢复处理。

关于vba - 错误处理仅有效一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35372946/

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