繁体   English   中英

使用VBA在另一个Excel工作簿中执行模块

[英]Executing module in another Excel workbook, using VBA

我一直在努力使这项工作永远下去。
我想在当前工作簿wbCntl的另一个工作簿中执行模块。
确切的代码在一个应用程序中有效,但在另一个应用程序中无效。

正确定义了sSignalInProcess和wbSignalInProcess。 这个想法是在第一遍打开或创建sSignalInProcess文件,然后在随后运行其代码时跳过该代码。

这是我的代码:

Sub GetSignalFile()
    'Open workbook if signal file is open
    On Error Resume Next
    Set wbSignalInProcess = Workbooks(sSignalInProcess)
    If Err.Number <> 0 Then
        Err.Clear
        'Open existing signal workbook
        On Error Resume Next
        Set wbSignalInProcess = Workbooks.Open(sFilePath & sSignalInProcess)
        If Err.Number <> 0 Then
            Err.Clear
            'Copy template signal workbook to a new workbook file for new signal
            FileCopy (sStdSignal), (sFilePath & sSignalInProcess)
            wbSignalInProcess.Save
            'Open new signal workbook
            Set wbSignalInProcess = Workbooks.Open(sFilePath & sSignalInProcess)
        End If
    End If
    Err.Clear
    Application.Run (wbSignalInProcess.Name & "!MainIntuitor")
    wbCntl.Activate
End Sub

线

 Application.Run (wbSignalInProcess.Name & "!MainIntuitor")   

被跳过并且没有错误地执行。 任何帮助,将不胜感激。

格兰特

我建议你添加

 On Error Goto 0

在临界线之前。 也许您会收到一条更有用的错误消息。 顺便第二

 On Error Resume Next

在您的代码中是没有必要的-激活“ Resume Next ”后,它将保持激活状态,直到您离开Sub或使用On Error Goto 0其停用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM