Hoppa till huvudinnehåll

Hur exporterar jag alla makron från en arbetsbok till en annan arbetsbok?

Författare: Xiaoyang Senast ändrad: 2020-08-06

Om du behöver exportera flera makro-VBA-koder från en arbetsbok till en annan, kan du kopiera dem en efter en normalt. Men detta kommer att vara tidskrävande, den här artikeln kommer jag att prata om hur man snabbt exporterar alla makron från en arbetsbok till en annan och sparar makrofilerna till en viss mapp också.

Exportera alla makron från en arbetsbok till en annan med VBA-kod


Exportera alla makron från en arbetsbok till en annan med VBA-kod

För att exportera alla makro-VBA-koder från en Excel-fil till en annan gör du med följande steg:

1. Först bör du öppna de två arbetsböckerna samtidigt, en innehåller makron, den andra är den du vill exportera makron till, se skärmdump:

Dok exportmakron 1

Fliken Office - Öppna, läs, redigera och hantera flera Office-dokument i ett enda flikfönster

Office-fliken möjliggör surfning, redigering och hantering av Microsoft Office-applikationer på flikar. Du kan öppna flera dokument / filer i ett enda flikfönster, till exempel genom att använda webbläsaren IE 8/9/10, Firefox och Google Chrome. Klicka för att ladda ner och gratis testversion nu!

doc exportmakron

2. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

3. Klicka Insert > Modul, och klistra in följande makro i Modulerna Fönster.

VBA-kod: Exportera alla makron från en arbetsbok till en annan:

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
Anmärkningar: I ovanstående kod, “gammal arbetsbok”Är namnet på arbetsboken som du vill exportera makron från och”ny arbetsbok”Är arbetsboken som du vill importera makron. Du bör ändra namnen till dina egna. Båda de två arbetsböckerna borde vara xlsm filformat.

Dok exportmakron 2

4. Efter att ha klistrat in ovanstående kod, tryck sedan på F5 nyckel för att köra den här koden och en Bläddra fönstret visas, välj en mapp för att placera de exporterade makrofilerna, se skärmdump:

Dok exportmakron 3

5. Klicka sedan OK knappen, och alla makron har exporterats från din angivna arbetsbok till en annan Excel-fil, och makrofilerna har också sparats i den specifika mappen. Se skärmdump:

Dok exportmakron 4

Anmärkningar: Den här koden kan bara exportera makron från normal modul.

Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

Beskrivning


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
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