Jim*_*ert 3 excel vba exception try-catch
我正在使用 excel 和 VBA。我试图从自动化异常中获取内部异常,但首先我需要让 try catch 块工作。看起来我已经完全复制了微软文档中的语法。这是代码:
Try
Set sm = CreateObject("SpectrumManager.Application")
Catch ex As Exception
MsgBox ("Can't Create Object") 'placeholder
'I want to get the inner exception from ex here
End Try
Run Code Online (Sandbox Code Playgroud)
End Try 处的错误消息是这样的:“预期:如果或 Select 或 Sub 或函数或属性或类型或 With 或 Enum 或语句结束” Catch 处的错误消息是这样的:“预期:语句结束”
我究竟做错了什么?我在这里先向您的帮助表示感谢。编辑:我现在意识到 vba 不支持 try-catch 块。这引出了我的问题,有没有办法从发送的原始异常中获取内部异常?或者该信息在转换为 vba 错误时会丢失吗?
VBA 不支持 Try Catch。您可以使用错误处理或更简单的方式
On Error Resume Next
Set sm = CreateObject("SpectrumManager.Application")
On Error GoTo 0
If sm Is Nothing Then
MsgBox "Can't Create Object"
End If
Run Code Online (Sandbox Code Playgroud)
一个简单的错误处理例程可能如下所示:
Public Sub test()
Dim sm As Object
On Error GoTo errhand
Set sm = CreateObject("SpectrumManager.Application")
'other code
Exit Sub
errhand:
Select Case Err.Number
Case 429
MsgBox "Can't Create Object"
'Case... other errors
End Select
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20259 次 |
| 最近记录: |