如何將一個工作簿中的所有宏匯出到另一個工作簿?


宏透過自動化重複操作,是有效的自動化工具,可以幫助您節省時間和精力。您可能偶爾需要將一組宏從一個工作表移動到另一個工作表以利用其功能。在本文中,我們將引導您完成將所有宏從一個 Excel 檔案匯出到另一個 Excel 檔案的每個步驟。完成後,您將能夠在整個 Excel 專案中使用自動化功能,因為您將擁有輕鬆地在工作簿之間移動宏所需的知識和技能。讓我們開始吧!

將所有宏從一個工作簿匯出到另一個工作簿

在這裡,我們將首先建立一個 VBA 模組,然後執行它來選擇資料夾以完成任務。讓我們來看一個簡單的過程,瞭解如何在 Excel 中將所有宏從一個工作簿匯出到另一個工作簿。

步驟 1

考慮任意兩個 Excel 工作簿,一個包含多個宏,另一個是新工作表。

首先,右鍵單擊工作表名稱,然後選擇“檢視程式碼”以開啟 VBA 應用程式。

右鍵點選 > 檢視程式碼。

步驟 2

然後單擊“插入”選擇“模組”,然後將下面的程式碼複製到文字框中。

程式碼

Sub ExportImportMacros()
   Dim SourceWorkbook As Workbook
   Dim DestinationWorkbook As Workbook
   Dim SourceModule As Object
   Dim DestinationVBProject As Object
   Set SourceWorkbook = Workbooks.Open("C:\Users
i31a\OneDrive\Desktop\old-workbook.xlsm") Set DestinationWorkbook = Workbooks.Open("C:\Users
i31a\OneDrive\Desktop
ew-workbook.xlsm") Set SourceModule = SourceWorkbook.VBProject.VBComponents.Item("Module1").CodeModule Set DestinationVBProject = DestinationWorkbook.VBProject On Error Resume Next DestinationVBProject.VBComponents.Remove DestinationVBProject.VBComponents.Item("Module1") On Error GoTo 0 DestinationVBProject.VBComponents.Add vbext_ct_StdModule Dim DestinationModule As Object Set DestinationModule = DestinationVBProject.VBComponents(DestinationVBProject.VBComponents.Count) DestinationModule.CodeModule.AddFromString SourceModule.Lines(1, SourceModule.CountOfLines) DestinationWorkbook.Save SourceWorkbook.Close False DestinationWorkbook.Close True Set SourceModule = Nothing Set DestinationModule = Nothing Set DestinationVBProject = Nothing Set SourceWorkbook = Nothing Set DestinationWorkbook = Nothing End Sub

在程式碼中,“舊工作簿”和“新工作簿”分別代表源和目標。

步驟 3

然後單擊 F5 執行模組。然後選擇要匯出宏的資料夾並單擊“確定”。

這就是如何在 Excel 中將所有宏從一個工作表匯出到另一個工作簿的方法。

結論

在本教程中,我們使用了一個簡單的示例來演示如何將 Excel 中一個工作簿的所有宏匯出到另一個工作簿,以突出顯示特定資料集。

更新於:2023年8月24日

276 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.