vba - 暂停代码,直到在另一个“Access ”表单中按下按钮

标签 vba forms ms-access error-handling

我有一个代码片段,用于检查是否有Internet连接。如果失败,它将进入错误处理程序并打开带有一些文本和按钮的表单。
这是一个非常复杂的代码(不是我的)。
我想暂停该函数中代码的执行,并在按另一种形式的按钮时恢复执行。
互联网研究没有帮助。我不知道两个不同的代码部分如何交互。

On Error GoTo NoConnnectionErrorHandler
    Dim Request As New MSXML2.XMLHTTP60
    Request.Open "GET", "http://www.bbc.com"
    Request.send
    'MsgBox Request.Status

NoConnnectionErrorHandler:
    DoCmd.OpenForm "Frm_Global_NoConnectionDialog"
没有互联网连接时,将打开一个表单。当按下另一种形式的按钮时,如何停止代码并让其恢复?
它定期遍历整个功能(其中片段只是一小部分)并进行检查。
如果没有连接,则应暂停整个程序,直到按下该按钮,然后再次检查连接,如果没有,请继续进行连接。
编辑:答案解决了这个问题,但令我困惑的一件事是如何通过按下按钮从另一种形式触发“恢复代码执行”。

最佳答案

如果我对您的理解正确,则应在错误处理程序(Exit Sub)上方使用NoConnectinoErrorHandler

添加一些代码以确保您的错误已得到解决,然后清除错误并继续工作。

看看这是您要找的东西:

Sub foo()

    ' Your unseen code ...

    On Error GoTo NoConnnectionErrorHandler
    Dim Request As New MSXML2.XMLHTTP60
    Request.Open "GET", "http://www.bbc.com"
    Request.send
    'MsgBox Request.Status


    Exit Sub    'Put this above your error handler
NoConnnectionErrorHandler:
    DoCmd.OpenForm "Frm_Global_NoConnectionDialog"

    'Some code to ensure error no longer exists....

    Err.Clear
    Resume

End Sub

关于vba - 暂停代码,直到在另一个“Access ”表单中按下按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48638587/

相关文章:

arrays - 使用 VBA 查找并替换 PowerPoint 演示文稿中的单词列表(包括表格)

C# - 透明窗体

html - 单选按钮在 IE7 和 IE9 中未对齐

vb.net - 如何检查VB.NET代码中Access SysCmd失败的原因?

java - 如何在不安装 MS Access 的情况下使用 .mdb 文件?

excel - VBA粘贴为值并遍历特定工作表

vba - VBA自定义函数可以知道公式是作为数组公式输入的吗?

vba - Excel自动添加带有单元格编辑历史记录的注释

php - 如何在 PHPmailer 中显示所有选中的复选框

windows - 您可以从 Mac 上运行的 Ruby 连接到 MS Access 数据库吗?