VBA错误处理无法在Excel中工作

Sam*_*ade 6 excel vba

我对VBA没有多少经验,但我有时会在工作中使用它.最近,我遇到了一个不应该发生的问题,我的老板和我自己都不知道.

基本上,问题是该Application属性默认DisplayAlerts设置为True无法由于某种原因而无法更改.可能相关的是,当我遇到错误时,它总是显示End | Debug | Help警告,并且永远不会遇到应用的错误处理.

我在64位Windows 7计算机上运行64位Office 2010.但是,我不认为这是一个平台问题,因为我已经在多个不同平台,操作系统和软件排列上进行了测试,没有其他机器出现此错误; 就是我的.

我已经创建了一些示例代码,以防任何人以前遇到过此问题或有任何想法.我唯一能想到的是,我的机器上安装了一些导致这种情况的东西.但是在程序清除和重启之后,我并没有更接近破译它可能是什么.

Public Sub TestErrorHandler()

    ' Suppress alerts
    Application.DisplayAlerts = False

    Dim strArray(1) As String
    strArray(0) = "Hello"
    strArray(1) = "World"

    ' Set up error handler
    On Error GoTo ErrHandler

    For i = 0 To 3
        MsgBox strArray(i)
    Next

    ' Strip the error handler
    On Error GoTo 0

    ' Unsuppress alerts
    Application.DisplayAlerts = True

    Exit Sub

    ErrHandler:

    MsgBox "Error: " & Err.Description

    Resume Next

End Sub
Run Code Online (Sandbox Code Playgroud)

错误被抛出for-loop(应该如此)的第三个枚举.错误的类型是无关紧要的,相关的是我得到错误并且从不命中错误处理程序.

任何建议或帮助将不胜感激.

非常感谢!

sha*_*esh 26

ALT + F11从Excel中按下以访问VBA编辑器.

转到工具菜单 - >选项项 - >常规选项卡.

将错误捕获设置为"中断未处理的错误"

http://i.msdn.microsoft.com/Aa155729.vba200111pa_f_image004(en-us,office.10).jpg