9

我用谷歌搜索了,然后什么都没有。

我的工作围绕着让我的同事生活更轻松。

目前,他们使用的是 10 多年前设计的非常笨重的电子表格。

在使用 PHP 将他们的工具和报告迁移到本地 Intranet 的过程中,我配置了一个电子表格,该电子表格根据他们的 Application.Username 下载该人的权限

然后与服务器稍微来回生成会话密钥,然后弹出Internet Explorer 会打开他们从工作簿中的下拉列表中选择的相关工具 - 这意味着他们的会话和工具将完全基于浏览器。

一切都很好,但是随机,有时,当打开互联网浏览器的子被触发时,会出现一个非常奇怪的错误消息:-

单击 Debug 后,将显示以下功能,您可以自己查看以黄色突出显示的行。

我可以确认我的任务计划中根本没有任何任务。当我结束它并再次运行它时,它可能运行得很好......只是有时会弹出这个错误。

请帮忙!预先感谢。

4

1 回答 1

3

对于这种看似无关且断断续续的错误,我通常选择延迟一点,捕获错误并重试,或两者兼而有之。

尝试以下操作(立即重试):

Function gogogo(sessKey)
On Error GoTo ErrHandler
    reportId = Sheet2.Range("A" & (Sheet2.Range("B1").Value + 1)).Value
    Set objIE = CreateObject("InternetExplorer.Application")
    URL = "http://localinternetdomainhere/OnlineTools/" & reportId & "/access/" & sessKey
    With objIE
        .Visible = True
        .navigate URL
    End With
    ThisWorkbook.Saved = True
    ThisWorkbook.Close False
    Exit Function

ErrHandler:

    If Err.Number = &H800704A6 Then 'Put a breakpoint here to make sure this is the ACTUAL VBA error number and not the ActiveX one. You might need to check against the Err.LastDllError property
        Resume
    End If
    Err.Raise Err.Number, Err.Source, Err.Description,err.HelpFile, err.HelpContext 'Reraise the error otherwise

End Function
于 2014-06-02T14:56:19.790 回答