Exporter automatiquement des macros
Bonjour,
J'aimerais savoir s'il est possible d'exporter automatiquement des macros d'un fichier excel vers un autre fichier excel...?
Je m'explique :
j'ai un fichier "création suivi d'affaires" basé sur 3 onglets (cf.pièce jointe).
En cliquant sur le bouton "création suivi d'affaires", je crée un nouveau fichier qui prend le nom que je choisis dans une boîte qui s'ouvre au clic.
Ce fichier nouvellement créé comporte 2 onglets dont un onglet "mise à jour" qui comporte un bouton de commande calqué sur le bouton de commande du fichier source (création suivi d'affaires, onglet mise à jour).
Mais bien évidemment, il n'y a que la forme qui est recréée, les lignes de code associées au bouton de commande de départ ne sont pas recopiées dans le bouton nouvellement créé.
Je voulais savoir s'il est possible lorsque je crée mon nouveau fichier, d'obtenir directement toutes ces lignes de code ?
Et par la même occasion, est-il possible d'exporter automatiquement un module du fichier source vers le fichier créé au moment de l'exécution de la macro (par exemple dans mon cas, le module 2 du fichier "création suivi d'affaires" ??
Le but final étant de réussir à créer des fichiers dans lesquels je trouve déjà toutes les macros nécessaires pour faire vivre ces fichiers plus tard.
Merci d'avance !
Bonjour vanderik,
Oui c'est possible.vanderik a écrit :J'aimerais savoir s'il est possible d'exporter automatiquement des macros d'un fichier excel vers un autre fichier excel...?
Mais dans ton cas, je vois une solution plus simple :
1- Tu enregistres une copie du fichier "création suivi d'affaires"
2- Tu enlèves les feuilles dont tu n'as pas besoin dans ce nouveau fichier
Le code :
Sub create_new_file()
Dim Rep As String, chemin$
Rep = InputBox("Veuillez entrer une affaire")
If Rep = "" Then Exit Sub
chemin = "C:\Users\Erik\Desktop\boulot\Macros\Suivi d'affaires\"
ThisWorkbook.SaveCopyAs (chemin & Rep & ".xlsm") 'enregistre une copie du fichier actuel
Workbooks.Open (chemin & Rep & ".xlsm")
Application.DisplayAlerts = False 'désactive les messages d'alerte
Sheets(Array("création", "Sheet5")).Delete 'mettre les feuilles à supprimer du nouveau fichier
ThisWorkbook.Save True 'sauvegarde du nouveau fichier
End SubBonjour et merci pour votre réponse !
désolé de répondre un peu tardivement, j'ai pas encore eu le temps d'essayer cette solution, je vais regarder ça de suite !