Salt la conținutul principal

Cum se exportă toate macrocomenzile dintr-un registru de lucru în alt registru de lucru?

Dacă trebuie să exportați mai multe coduri macro vba dintr-un registru de lucru în altul, le puteți copia unul câte unul în mod normal. Dar acest lucru va consuma mult timp, în acest articol, voi vorbi despre cum să exportați rapid toate macrocomenzile dintr-un registru de lucru în altul și să salvați fișierele macro într-un anumit folder.

Exportați toate macrocomenzile dintr-un registru de lucru în altul cu cod VBA


Exportați toate macrocomenzile dintr-un registru de lucru în altul cu cod VBA

Pentru a exporta toate codurile macro vba dintr-un fișier Excel în altul, urmați pașii următori:

1. Mai întâi, ar trebui să deschideți cele două registre de lucru în același timp, unul conține macrocomenzi, celălalt este cel către care doriți să exportați macrocomenzi, vedeți captura de ecran:

doc macrocomenzi de export 1

Fila Office - Deschideți, citiți, editați și gestionați mai multe documente Office într-o singură fereastră cu file

Fila Office permite navigarea, editarea și gestionarea în file a aplicațiilor Microsoft Office. Puteți deschide mai multe documente / fișiere într-o singură fereastră cu file, cum ar fi utilizarea browserului IE 8/9/10, Firefox și Google Chrome. Faceți clic pentru a descărca și proba gratuită acum!

doc macrocomenzi de export

2. Țineți apăsat butonul ALT + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.

3. Clic Insera > Modul, și lipiți următoarea macro în Module Fereastră.

Cod VBA: exportați toate macrocomenzile dintr-un registru de lucru în altul:

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
notițe: În codul de mai sus, „vechi-carte de lucru”Este numele registrului de lucru din care doriți să exportați macrocomenzile și„nou-registru de lucru”Este registrul de lucru pe care doriți să îl importați macrocomenzile. Ar trebui să schimbați numele în numele dvs. Ambele două cărți de lucru ar trebui să fie xlsm tipul fisierului.

doc macrocomenzi de export 2

4. După lipirea codului de mai sus, apoi apăsați F5 tasta pentru a rula acest cod și a Naviga fereastra este afișată, vă rugăm să alegeți un folder pentru a pune fișierele macro exportate, a se vedea captura de ecran:

doc macrocomenzi de export 3

5. Apoi apasa OK și toate macrocomenzile au fost exportate din registrul de lucru specificat într-un alt fișier Excel, iar fișierele macro au fost salvate și în folderul specific. Vedeți captura de ecran:

doc macrocomenzi de export 4

notițe: Acest cod poate exporta macrocomenzile doar din modulul normal.

Cele mai bune instrumente de productivitate de birou

Caracteristici populare: Găsiți, evidențiați sau identificați duplicatele   |  Ștergeți rândurile goale   |  Combinați coloane sau celule fără a pierde date   |   Rundă fără Formula ...
Super căutare: VLookup cu mai multe criterii    VLookup cu valori multiple  |   VLookup pe mai multe foi   |   Căutare fuzzy ....
Listă derulantă avansată: Creați rapid o listă derulantă   |  Listă drop-down dependentă   |  Listă derulantă cu selectare multiplă ....
Manager de coloane: Adăugați un număr specific de coloane  |  Mutați coloanele  |  Comutați starea vizibilității coloanelor ascunse  |  Comparați intervale și coloane ...
Caracteristici prezentate: Focus pe grilă   |  Vedere de proiectare   |   Big Formula Bar    Manager registru de lucru și foi   |  Biblioteca de resurse (Text automat)   |  Data Picker   |  Combinați foi de lucru   |  Criptare/Decriptare celule    Trimiteți e-mailuri după listă   |  Super Filtru   |   Filtru special (filtrează bold/italic/barat...) ...
Top 15 seturi de instrumente12 Text Instrumente (Adăuga text, Eliminați caractere,...)   |   50+ Diagramă Tipuri de (Gantt Chart,...)   |   40+ Practic Formule (Calculați vârsta pe baza zilei de naștere,...)   |   19 inserare Instrumente (Introduceți codul QR, Inserați imaginea din cale,...)   |   12 Convertire Instrumente (Numere la cuvinte, conversie valutara,...)   |   7 Merge & Split Instrumente (Rânduri combinate avansate, Celule divizate,...)   |   ... și altele

Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru Excel oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp.  Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...

fila kte 201905


Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
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