excelvba中的简单错误处理

excelvba中的简单错误处理,excel,vba,Excel,Vba,我需要一个简单的错误处理代码为我的小宏,我有搜索网页,但没有什么简单的,似乎都非常复杂 我每周下载一次.txt格式的销售报告,运行单独的宏来完成任务,然后添加到母版页。并非每周都下载销售报告,因为该特定地区可能没有销售 我需要一个简单的错误处理程序,这样如果它找不到报告,它就会移动到下一个子系统 谢谢你的帮助 Sub MXM_POS() Workbooks.OpenText Filename:="C:\Users\903270\Documents\Excel\MXMPOS*.txt"

我需要一个简单的错误处理代码为我的小宏,我有搜索网页,但没有什么简单的,似乎都非常复杂

我每周下载一次.txt格式的销售报告,运行单独的宏来完成任务,然后添加到母版页。并非每周都下载销售报告,因为该特定地区可能没有销售

我需要一个简单的错误处理程序,这样如果它找不到报告,它就会移动到下一个子系统

谢谢你的帮助

Sub MXM_POS()

    Workbooks.OpenText Filename:="C:\Users\903270\Documents\Excel\MXMPOS*.txt"

    ‘Run macro code

    Run ("DLK_POS")

End Sub

以下是一个简单的基本结构,您可以根据需要进行扩展:

Sub MXM_POS()
    On Error GoTo ErrHandler

    ' code here

ExitSub:
    ' shutdown code here
    Exit Sub

ErrHandler:
    If Err.Number <> 0 Then
        Dim mbr As VbMsgBoxResult
        mbr = MsgBox( _
            "Error #" & Err.Number & ": " & Err.Description & vbNewLine & _
            "Would you like to continue?", vbExclamation Or vbYesNo)

        If mbr = vbYes Then Resume ExitSub
        Application.Quit
    End If
End Sub
当我需要堆栈转储时,我使用换行连接在Err对象的Source属性中构造它,然后只在调用堆栈的顶部显示MsgBox结果,通常是启动代码的事件处理程序或用户调用的顶级宏