Note: The other languages of the website are Google-translated. Back to English

Comment exporter toutes les macros d'un classeur vers un autre classeur?

Si vous devez exporter plusieurs codes macro vba d'un classeur à un autre, vous pouvez les copier un par un normalement. Mais cela prendra du temps, cet article, je vais parler de la façon d'exporter rapidement toutes les macros d'un classeur à un autre et d'enregistrer les fichiers de macros dans un dossier spécifique également.

Exporter toutes les macros d'un classeur à un autre avec le code VBA


Exporter toutes les macros d'un classeur à un autre avec le code VBA

Pour exporter tous les codes macro vba d'un fichier Excel à un autre, procédez comme suit:

1. Tout d'abord, vous devez ouvrir les deux classeurs en même temps, l'un contient des macros, l'autre est celui vers lequel vous souhaitez exporter les macros, voir capture d'écran:

macros d'exportation doc 1

Onglet Office - Ouvrir, lire, modifier et gérer plusieurs documents Office dans une seule fenêtre à onglets

Office Tab permet la navigation par onglets, l'édition et la gestion des applications Microsoft Office. Vous pouvez ouvrir plusieurs documents / fichiers dans une seule fenêtre à onglets, par exemple en utilisant le navigateur IE 8/9/10, Firefox et Google Chrome. Cliquez pour télécharger et essai gratuit maintenant!

macros d'exportation doc

2. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

3Cliquez sur insérer > Module, et collez la macro suivante dans le Module Fenêtre.

Code VBA: exportez toutes les macros d'un classeur à un autre:

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
Notes: Dans le code ci-dessus, "ancien classeur"Est le nom du classeur à partir duquel vous souhaitez exporter les macros, et"nouveau-classeur»Est le classeur dans lequel vous souhaitez importer les macros. Vous devriez changer les noms pour les vôtres. Les deux classeurs doivent être xlsm format de fichier.

macros d'exportation doc 2

4. Après avoir collé le code ci-dessus, appuyez sur F5 clé pour exécuter ce code, et un DECOUVREZ La fenêtre s'affiche, veuillez choisir un dossier pour mettre les fichiers de macro exportés, voir capture d'écran:

macros d'exportation doc 3

5. Puis clique OK et toutes les macros ont été exportées de votre classeur spécifié vers un autre fichier Excel, et les fichiers de macros ont également été enregistrés dans le dossier spécifique. Voir la capture d'écran:

macros d'exportation doc 4

Notes: Ce code ne peut exporter que les macros du module normal.


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2021 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Commentaires (2)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, Cela n'a pas fonctionné pour moi :( Toutes mes macros ont des noms, est-ce le problème ? Merci pour toute aide
Ce commentaire a été minimisé par le modérateur sur le site
cela peut-il être modifié pour simplement exporter tous les modules du personal.XLSB ? Juste pour une "sauvegarde régulière de mes macros" - Raisons
Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés

Nous suivre

Copyright © 2009 - www.extendoffice.com. | Tous les droits sont réservés. Alimenté par ExtendOffice. | | Plan du site
Microsoft et le logo Office sont des marques commerciales ou des marques déposées de Microsoft Corporation aux États-Unis et / ou dans d'autres pays.
Protégé par Sectigo SSL