通过 MS Project 打开现有 Excel 文件和该文件中的 运行 宏

Open an existing Excel file and run a macro in that file through MS Project

我想打开一个名为 Open_Yard_Scheduling_tool_V8.xlsm 的 Excel 文件,运行 在同一个名为 formulcopy 的 Excel 文件中创建一个宏,然后复制数据从 Excel 文件并通过在 MS Project 应用程序中的 VBA 中编写代码粘贴到 MS Project 文件中。

我可以打开 Excel 文件并复制其数据并将其粘贴到所需的项目文件中,但我无法 运行 Excel 中的宏文件通过 MS Project 中的 VBA。

我正在使用下面提到的代码。

Sub ex_mac()   
    Dim xlApp As Object
    Dim xlWkb As Object

    Set xlApp = CreateObject("Excel.Application")
    Set xlWkb = xlApp.Workbooks.Open("C:\Users\DHRUV.HEMIL.MANOJ\Documents\Open_Yard_Scheduling_tool_V8.xlsm")

    xlApp.Visible = True

    Application.Run ("'C:\Users\DHRUV.HEMIL.MANOJ\Documents\Open_Yard_Scheduling_tool_V8.xlsm'!formulcopy") 
End Sub

它只能打开所需的 Excel 文件,但无法 运行 同一 Excel 文件中的宏。

这里的问题是 Application.Run 引用了 MS Project 应用程序,但您尝试 运行 在 Excel 应用程序中编写代码。因此,您需要改用 xlApp.Run(指的是您使用 Set xlApp = CreateObject("Excel.Application"):

创建的 Excel 应用程序
xlApp.Run("'Open_Yard_Scheduling_tool_V8.xlsm'!formulcopy")

注意这里不需要完整路径