簡體   English   中英

在另一個工作簿中的工作簿中運行vba宏

[英]run a vba macro in a workbook from another workbook

我試圖在WorkbookB中編寫一個macroB ,它會打開另一個WorkbookA並在sheet1中運行macroA

我用谷歌搜索,發現了兩種方法:

  • 使用Application.Run

     Dim i As Integer, en As Integer en = Range("B4") Application.Run "C\\Mtest\\WorkbookA.xlsb !macroA" 

    但我收到錯誤1004:此工作表中不存在宏指令或宏已停用

  • 使用RunAutoMacros

     Workbooks.Open "C\\Mtest\\WorkbookA.xlsb" Workbooks("WorkbookA.xlsb").Worksheets("sheet1").Activate ActiveWorkbook.RunAutoMacros macroA 

    在這里,我得到了一個錯誤:1004 RunAutoMacros方法不起作用。

知道有什么問題嗎? 還是我能以更好的方式做到這一點?

假設您的macroA在工作簿C\\Mtest\\WorkbookA.xlsbsheet1的代碼模塊中,則應使用

Application.Run "'C\Mtest\WorkbookA.xlsb'!sheet1.macroA"

我認為空間是問題。 嘗試將其刪除。 即-更改此行

Application.Run "C\Mtest\WorkbookA.xlsb !macroA"

Application.Run "C\Mtest\WorkbookA.xlsb!macroA"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM