excel中vba宏,在执行时如果超时出错了 怎么让它出错后重新执行这段代码
我的宏有时候连接sql数据库时超时出错了(因数据量大个别时候会有),就会出错提示。怎么才能让宏在出错后重头执行呢?...
我的宏 有时候连接sql数据库时超时出错了(因数据量大 个别时候会有),就会出错提示。怎么才能让宏在出错后重头执行呢?
展开
1个回答
展开全部
你把连接数据库写成函数,主程序可以抛出异常,在异常处理那里调用你的函数
比如我写的
Private Sub UserForm_Click()
On Error GoTo ErrL
Dim s As String
s = ThisWorkbook.Sheets(1).Cells(1, 1)
MsgBox (s)
GoTo EndOk
ErrL:
MsgBox ("出错!")
EndOk:
End Sub
当点击窗体输出A1值,如果我把上面某个对象写错,那么获取不到出现异常,就会执行Errl:里的代码
格式:
On Error GoTo ErrL
可以首次调用sql函数
GoTo EndOk
ErrL:
这里调用你的sql函数
EndOk:
追问
我小白 这个不太会。
我做的是模块,
追答
我写的很清楚啊,模块和窗体一个道理,你就在主程序里加上
On Error GoTo ErrL
GoTo EndOkErrL:
EndOk:
把你连接sql的语句单独写成函数调用啊
话说都写sql了,还算小白么= =
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询