gpt4 book ai didi

excel - VBA 错误处理在 Excel 中不起作用

转载 作者:行者123 更新时间:2023-12-02 02:46:08 24 4
gpt4 key购买 nike

我对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

for循环的第三个枚举上抛出错误(正如它应该的那样)。错误的类型无关紧要,相关的是我收到错误并且从未触发错误处理程序。

对此的任何建议或帮助将不胜感激。

非常感谢!

最佳答案

在 Excel 中按 ALT + F11 可进入 VBA 编辑器。

转到“工具”菜单 ->“选项”项 ->“常规”选项卡。

将错误捕获设置为“未处理错误时中断”


(来源:microsoft.com)

关于excel - VBA 错误处理在 Excel 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3440735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com