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

使用VBA在另一个Excel工作簿中执行模块,excel,vba,Excel,Vba,我一直在努力使这项工作永远有效。 我想在当前工作簿wbCntl的另一个工作簿中执行模块。 exactcode在一个应用程序中工作,但在另一个应用程序中不工作 正确定义了sSignalInProcess和wbSignalInProcess。其思想是在第一次运行时打开或创建sSignalInProcess文件,然后在后续运行代码时跳过该代码 这是我的密码: Sub GetSignalFile() 'Open workbook if signal file is open On Err

我一直在努力使这项工作永远有效。
我想在当前工作簿wbCntl的另一个工作簿中执行模块。
exactcode在一个应用程序中工作,但在另一个应用程序中不工作

正确定义了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
被跳过,并且不会在没有错误的情况下执行。任何帮助都将不胜感激

格兰特

我建议你加上

 On Error Goto 0
在临界线之前。也许你会得到一个更有用的错误消息。顺便说一下,第二个

 On Error Resume Next

在您的代码中没有必要-一旦您激活“
继续下一步
”,它将一直处于激活状态,直到您离开您的Sub或在错误转到0时禁用它。成功了。谢谢你的帮助。@Grant:不客气。别忘了接受我的帖子作为“答案”
 On Error Resume Next