Bonjour le forum,
Tout est dans le titre. En ce qui me concerne j'ouvre les 2 classeurs et je fait glisser les modules 1 par 1
Auriez-vous une astuce pour faire mieux.
Macro?
Merci pour vos éventuelles réponses
Bien cordialement
Discussion :
Bonjour le forum,
Tout est dans le titre. En ce qui me concerne j'ouvre les 2 classeurs et je fait glisser les modules 1 par 1
Auriez-vous une astuce pour faire mieux.
Macro?
Merci pour vos éventuelles réponses
Bien cordialement
Salut, en cherchant un peu tu aurais pu trouver ceci : Exporter / importer tous les modules et frm d'un projet
Bonjour,
Adapte ce code. Il copie les modules dans le classeur contenant la macro en conservant le nom. Dans le centre de gestion de la confidentialité, paramètre des macros, la case "Accès approuvé au modèle d'objet du projet VBA" doit être cochée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Sub CopieModules() Set SourceWB = Workbooks("140804.xlsm") Set CibleWB = ThisWorkbook FichTemp = "C:\Users\Daniel\Documents\Donnees\Daniel\mpfe\tmpexport.bas" On Error Resume Next For Each Item In SourceWB.VBProject.VBComponents SourceWB.VBProject.VBComponents(Item).Export FichTemp CibleWB.VBProject.VBComponents.Import FichTemp Kill FichTemp NomModule = Item.Name SourceWB.VBProject.VBComponents(NomModule).Export FichTemp CibleWB.VBProject.VBComponents.Import FichTemp Kill FichTemp Next Item On Error GoTo 0 End Sub
Bonjour Daniel.C,
J'ai essayer d'adapter le code car c'est office 2003
Mais ça accroche à la première ligne.
Merci pour ton code que nous allons bien finir par adapter
Code : Sélectionner tout - Visualiser dans une fenêtre à part Set SourceWB = Workbooks("140804.xls")
Bien cordialement à toi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Sub CopieModules() Set SourceWB = Workbooks("140804.xls") Set CibleWB = ThisWorkbook FichTemp = "C:\Users\Abel\Documents\Donnees\Abel\mpfe\tmpexport.bas" On Error Resume Next For Each Item In SourceWB.VBProject.VBComponents SourceWB.VBProject.VBComponents(Item).Export FichTemp CibleWB.VBProject.VBComponents.Import FichTemp Kill FichTemp NomModule = Item.Name SourceWB.VBProject.VBComponents(NomModule).Export FichTemp CibleWB.VBProject.VBComponents.Import FichTemp Kill FichTemp Next Item On Error GoTo 0 End Sub
Désolé,
"SourceWB" est le classeur source, "CibleWB" est le classeur cible. "FichTemp" est le nom du classeur temporaire servant à l'exportation / Importation des modules.
Bonsoir Daniel.C,
Merci à toi. Réponse simple, concise, parfaite pour continuer le boulot.
Bonne fin de WE
Bien cordialement
Partager