我有一个连接到MySQL服务器的excel工作簿。我放置了一个刷新数据的刷新按钮,它保存了表单的unprotect和protect语句。
我的问题是当打开excel文件并单击不在网络中的计算机中的刷新时,我得到一个DSN创建向导,如果我在向导中按下取消,表单将变得不受保护。
我想放置一个IF条件来检查DSN是否可用,如果不是,它应该退出sub。
有什么想法吗?
这是我的错误处理程序的代码,但我仍然得到DSN创建向导,并且在msgbox关闭后,工作表不受保护
On Error GoTo handler
Application.ScreenUpdating = False
Sheets("DEC-2015").Unprotect Password:="password"
ActiveWorkbook.Connections("Query from Sample").Refresh
Sheets("DEC-2015").Protect _
Password:="password", _
UserInterfaceOnly:=True, _
AllowFiltering:=True, _
AllowSorting:=True, _
AllowUsingPivotTables:=True
handler:
MsgBox "Server Connection Lost...", vbOKOnly + vbCritical, "Warning"
Exit Sub
答案 0 :(得分:0)
通过将代码更改为以下内容来关闭警报:
, then select the