Excel 在另一个工作簿上运行宏后出错

Excel 在另一个工作簿上运行宏后出错,excel,vba,Excel,Vba,我试图运行远程宏,但在关闭工作簿时遇到错误“工作簿类的关闭方法失败”。我需要改变什么 Sub RunRemoteMacro() Dim xlApp, xlWbk On Error GoTo errHandler Set xlApp = CreateObject("Excel.Application") Set xlWbk = xlApp.Workbooks.Open("anotherworkbook.xlsm", , True) xlApp.Appl

我试图运行远程宏,但在关闭工作簿时遇到错误“工作簿类的关闭方法失败”。我需要改变什么

Sub RunRemoteMacro()
    Dim xlApp, xlWbk

    On Error GoTo errHandler

    Set xlApp = CreateObject("Excel.Application")
    Set xlWbk = xlApp.Workbooks.Open("anotherworkbook.xlsm", , True)

    xlApp.Application.Visible = True

    xlApp.Application.Run "testmacro"

    xlApp.DisplayAlerts = False

    ''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' ERROR: Close method of Workbook class failed
    ''''''''''''''''''''''''''''''''''''''''''''''''''''
    xlWbk.Close False

exitHandler:
    xlApp.Application.Quit

    Set xlWkb = Nothing
    Set xlApp = Nothing

    Exit Sub

errHandler:
    Debug.Print Now() & ": RunRemoteMacro - " & Err.Description

    On Error GoTo 0
    Resume exitHandler
End Sub
问候,,
埃利奥·费尔南德斯(Elio Fernandes)

我刚刚找到了一个正确关闭的方法。请参见exitHandler中的代码

Sub RunRemoteMacro()
    Dim xlApp, xlWbk

    On Error GoTo errHandler

    Set xlApp = CreateObject("Excel.Application")
    Set xlWbk = xlApp.Workbooks.Open("anotherworkbook.xlsm", , True)

    xlApp.Application.Visible = True

    xlApp.Application.Run "testmacro"

    xlApp.DisplayAlerts = False   

exitHandler:
    ' Close Workbook
    xlWbk.Close False
    Set xlWkb = Nothing

    ' Close application
    xlApp.Application.Quit
    Set xlApp = Nothing

    Exit Sub

errHandler:
    Debug.Print Now() & ": RunRemoteMacro - " & Err.Description

    On Error GoTo 0
    Resume exitHandler
End Sub

这个vba是在excel中运行还是在另一个microsoft应用程序中运行?
testmacro
在做什么?
xlWbk
出错时是否仍处于打开状态?
testmacro
放在哪里?我正在尝试从excel、Outlook和vbs脚本运行这个vba(错误是相同的!);