在出错时退出多步访问VBA宏但继续调用宏的代码

时间:2018-04-24 20:37:39

标签: vba access-vba

我有一个一个接一个地调用4个函数的宏。

宏的调用如下:

For Each APP In sArr
    DoCmd.RunMacro ("doMacro")
Next

如果宏在第一个函数失败,我想退出该函数,退出宏但继续上面的for循环。

我尝试了退出功能,但它会退出该功能并继续播放宏。 我尝试了结束,但这会停止所有代码执行,这不是我想要的。

如何退出宏但继续for循环?

1 个答案:

答案 0 :(得分:0)

使用RunMacro语句换取On Error语句 - Resume Next以关闭错误处理,GoTo 0将其还原:

For Each APP In sArr
    On Error Resume Next
        DoCmd.RunMacro "doMacro"
        If Err.Number <> 0 Then
            'assuming APP has a Name property:
            "Macro 'doMacro' failed in " & APP.Name & ": " & Err.Description
        End If
    On Error GoTo 0
Next