跳到主要內容

如何將所有宏從一個工作簿導出到另一工作簿?

如果需要將多個宏vba代碼從一個工作簿導出到另一個工作簿,則可以正常地一個一個地複制它們。 但這將很耗時,本文中,我將討論如何快速將所有宏從一個工作簿導出到另一工作簿,以及如何將宏文件保存到特定文件夾。

使用VBA代碼將所有宏從一個工作簿導出到另一工作簿


使用VBA代碼將所有宏從一個工作簿導出到另一工作簿

要將所有宏vba代碼從一個Excel文件導出到另一個,請執行以下步驟:

1。 首先,您應該同時打開兩個工作簿,一個包含宏,另一個是要將宏導出到的工作簿,請參見屏幕截圖:

doc匯出巨集1

Office選項卡-在一個選項卡式窗口中打開,閱讀,編輯和管理多個Office文檔

Office選項卡允許使用選項卡式瀏覽,編輯和管理Microsoft Office應用程序。 您可以在一個選項卡式窗口中打開多個文檔/文件,例如使用瀏覽器IE 8/9/10,Firefox和Google Chrome。 點擊下載並立即免費試用!

doc匯出巨集

2。 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

3。 點擊 插入 > 模塊 並將以下宏粘貼到 模塊 窗口。

VBA代碼:將所有宏從一個工作簿導出到另一個工作簿:

Sub ExportAndImportModule()
Dim xStrSWSName, xSreDWSName As String
Dim xSWS, xDWS As Workbook
xStrSWSName = "old-workbook"
xSreDWSName = "new-workbook"
Dim xFilePath As String
Dim xObjFD As FileDialog
Set xObjFD = Application.FileDialog(msoFileDialogFolderPicker)
 With xObjFD
        .AllowMultiSelect = False
        .Show
        If .SelectedItems.Count > 0 Then
            xFilePath = .SelectedItems.Item(1)
        Else
            Exit Sub
        End If
End With
On Error GoTo Err1
Set xSWS = Workbooks(xStrSWSName & ".xlsm")
Set xDWS = Workbooks(xSreDWSName & ".xlsm")
Set xvbap = xSWS.VBProject
Set xVBC = xvbap.VBComponents
For Each Module In xSWS.VBProject.VBComponents
If Module.Type = vbext_ct_StdModule Then
Module.Export (xFilePath & "\" & Module.Name & ".bas")
xDWS.VBProject.VBComponents.Import (xFilePath & "\" & Module.Name & ".bas")
End If
Next Module
Exit Sub
Err1:
    MsgBox "come to nothing!"
End Sub
備註:在上面的代碼中,“舊工作簿“是您要從中導出宏的工作簿的名稱,而“新工作簿”是您要導入宏的工作簿。 您應該將名稱更改為您自己的名稱。 兩個工作簿都應該是 XLSM 文件格式。

doc匯出巨集2

4。 粘貼上面的代碼後,然後按 F5 運行此代碼的關鍵,以及 瀏覽 顯示窗口,請選擇一個文件夾來放置導出的宏文件,請參見屏幕截圖:

doc匯出巨集3

5。 然後點擊 OK 按鈕,所有宏都已從您指定的工作簿導出到另一個Excel文件,並且這些宏文件也已保存到特定文件夾中。 看截圖:

doc匯出巨集4

備註注意:此代碼只能從普通模塊中導出宏。

最佳辦公生產力工具

🤖 Kutools 人工智慧助手:基於以下內容徹底改變數據分析: 智慧執行   |  生成代碼  |  建立自訂公式  |  分析數據並產生圖表  |  呼叫 Kutools 函數...
熱門特色: 尋找、突出顯示或識別重複項   |  刪除空白行   |  合併列或儲存格而不遺失數據   |   沒有公式的回合 ...
超級查詢: 多條件VLookup    多值VLookup  |   跨多個工作表的 VLookup   |   模糊查詢 ....
高級下拉列表: 快速建立下拉列表   |  依賴下拉列表   |  多選下拉列表 ....
欄目經理: 新增特定數量的列  |  移動列  |  切換隱藏列的可見性狀態  |  比較範圍和列 ...
特色功能: 網格焦點   |  設計圖   |   大方程式酒吧    工作簿和工作表管理器   |  資源庫 (自動文字)   |  日期選擇器   |  合併工作表   |  加密/解密單元格    按清單發送電子郵件   |  超級濾鏡   |   特殊過濾器 (過濾粗體/斜體/刪除線...)...
前 15 個工具集12 文本 工具 (添加文本, 刪除字符,...)   |   50+ 圖表 類型 (甘特圖,...)   |   40+ 實用 公式 (根據生日計算年齡,...)   |   19 插入 工具 (插入二維碼, 從路徑插入圖片,...)   |   12 轉化 工具 (數字到單詞, 貨幣兌換,...)   |   7 合併與拆分 工具 (高級合併行, 分裂細胞,...)   |   ... 和更多

使用 Kutools for Excel 增強您的 Excel 技能,體驗前所未有的效率。 Kutools for Excel 提供了 300 多種進階功能來提高生產力並節省時間。  點擊此處獲取您最需要的功能...

產品描述


Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I agree with Rediflow. Please provide a clue to where the code can be found to export all macros from the personal.xlsb file to a text file.
This comment was minimized by the moderator on the site
can this be altered to just export all Moduls from the personal.XLSB? Just for regular "Backup of my Macros" - Reasons
This comment was minimized by the moderator on the site
Hello, This did not work for me:( All my macros have names, is that the problem?Thanks for any help
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations