如何將所有宏從一個工作簿導出到另一工作簿?
如果需要將多個宏vba代碼從一個工作簿導出到另一個工作簿,則可以正常地一個一個地復制它們。 但這將很耗時,本文中,我將討論如何快速將所有宏從一個工作簿導出到另一個工作簿,以及如何將宏文件保存到特定的文件夾中。
使用VBA代碼將所有宏從一個工作簿導出到另一工作簿
使用VBA代碼將所有宏從一個工作簿導出到另一工作簿要將所有宏vba代碼從一個Excel文件導出到另一個,請執行以下步驟:
1。 首先,您應該同時打開兩個工作簿,一個包含宏,另一個是要將宏導出到的工作簿,請參見屏幕截圖:
Office Tab- 在單個選項卡式窗口中打開、閱讀、和管理多個 Office 文檔Office Tab 啟用選項卡式瀏覽、和管理 Microsoft Office 應用程序。 您可以在單個選項卡式窗口中打開多個文檔/文件,例如使用瀏覽器 IE 8/9/10、Firefox 和 Google Chrome。 點擊下載并立即!
2。 按住 ALT + F11 鍵打開 Microsoft Visual Basic應用程序 窗口。
3。 點擊 插頁 > 模塊 并將以下宏粘貼到 模塊 窗口。
VBA代碼:將所有宏從一個工作簿導出到另一個工作簿:
Sub ExportAndimportModule()Dim xStrSWSName, xSreDWSName As StringDim xSWS, xDWS As WorkbookxStrSWSName = "old-workbook"xSreDWSName = "new-workbook"Dim xFilePath As StringDim xObjFD As FileDialogSet xObjFD = Application.FileDialog(msoFileDialogFolderPicker)With xObjFD.AllowMultiSelect = False.ShowIf .SelectedItems.Count > 0 ThenxFilePath = .SelectedItems.Item(1)ElseExit SubEnd IfEnd WithOn Error GoTo Err1Set xSWS = Workbooks(xStrSWSName & ".xlsm")Set xDWS = Workbooks(xSreDWSName & ".xlsm")Set xvbap = xSWS.VBProjectSet xVBC = xvbap.VBComponentsFor Each Module In xSWS.VBProject.VBComponentsIf Module.Type = vbext_ct_StdModule ThenModule.Export (xFilePath & "" & Module.Name & ".bas")xDWS.VBProject.VBComponents.import (xFilePath & "" & Module.Name & ".bas")End IfNext ModuleExit SubErr1:MsgBox "come to nothing!"End SubCopy備注:在上面的代碼中,“舊工作簿“”是您要從中導出宏的工作簿的名稱,“新工作簿”是您要導入宏的工作簿。 您應該將名稱更改為您自己的名稱。 兩個工作簿都應該是 XLSM 文件格式。4。 粘貼上面的代碼后,然后按 F5 運行此代碼的關鍵,以及 瀏覽 顯示窗口,請選擇一個文件夾來放置導出的宏文件,請參見屏幕截圖:
5。 然后點擊 OK 按鈕,所有宏都已從您指定的工作簿導出到另一個Excel文件,并且這些宏文件也已保存到特定文件夾中。 看截圖:
備注:此代碼只能從普通模塊中導出宏。
最佳辦公生產力工具
將小時轉化為分鐘 Kutools for Excel!準備好增強您的 Excel 任務了嗎? 利用的力量 Kutools for Excel - 您終極的節省時間的工具。 簡化復雜的任務并像專業人士一樣瀏覽數據。 以閃電般的速度體驗 Excel!
為什么需要 Kutools for Excel