我的代码中有一个git ls-remote -t -h ssh://user@server/path/to/repo.git
循环,在某些情况下可能会出错。但是由于错误,我只希望代码退出Do Until
循环并继续子程序的其余部分。
我尝试过使用Do Until
,但这说明了
预期转到或恢复
然后我尝试使用On Error Exit Do
,因为5865是它需要继续执行的循环之后的行,但是,这表示
标签未定义
我怎么能做到这一点?
答案 0 :(得分:4)
您在SUB或FUNCTION的顶部声明了一个错误捕获器,即:
On Error Goto ErrTrap
在这种情况下," ErrTrap"是一个标签,它通常是你日常工作的底部:
ErrTrap:
If Err.Number = ... Then
...
Resume AfterError ' another label
End If
MsgBox("Error blah blah")
以上" ErrTrap:"你会放置一个
相应地 Exit Sub
或Exit Function
你会放置" AfterError:"您希望代码在处理错误后恢复的任何地方。
这是一个更复杂的主题的简化 - 错误处理有很多选项,包括行号捕获,Resume Next等,但这应该足以让你现在想要的。研究该主题以获取更多信息。