Bonjour,
Je m'appelle Charles, après avoir passé des heures entières sur ce forum il me reste quelques interrogations. Voila pourquoi je suis nouveau parmi vous. je vous remercie pour votre acceuil et pour votre aide future dans ce forum qui me semble très actif.
j'ai crée un userfom qui me permet de créer un nouveau classeur à partir du document initial et en cliquant sur le bouton valider du userform.
- Mon classeur initial s'appelle "AFI essai macro V3"
- Le classeur créé est nommé en fonction des informations rentrées dans le userfom (Nom1 et Nom2), ce qui nous donne dans le code :
ActiveWorkbook.SaveAs "Synthèse Financière" & " " & Nom2 & " " & Nom1
- Ensuite, je copie les onglets du classeur initial vers le classeur crée
Voici ma problématique:
Ces onglets possèdent des macro en version userform et module. Le problème est que je n'arrive pas à copier ni le code d'un userform, ni celui d'un module vers le nouveau document.
Pour résumer, ma question est : Comment copier les macros des onglets sur un classeur nouvellement crée?
- Quand je lance la macro, un troisième classeur excel se crée en plus du classeur appelé "Synthèse Financière" & " " & Nom2 & " " & Nom1
- Ce troisième classeur contient bien contient bien ma macro du userfom. Je souhaiterais cependant que ce troisième classeur ne soit pas crée et que la macro soit directement copiée dans mon classeur "Synthèse Financière" & " " & Nom2 & " " & Nom1.
Voici la macro:
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 'activation du bouton valider' Private Sub CommandButton_valider_Click() 'on cree et on renomme un nouveau classeur' 'création de l'objet excel' Dim Nom1 As String Dim Nom2 As String Nom1 = TextBox_nom_de_la_societe Nom2 = TextBox_nature_de_l_operation 'copie onglets' Worksheets(Array(" Données initiales", " Liasse", "Contrôles liasses", "Retraitement", "Actif", "Passif", "Compte de résultat", "BFR", "Flux", "Ratios", "Synthèse")).Copy
'nomination du nouveau dossier'
ActiveWorkbook.SaveAs "Synthèse Financière" & " " & Nom2 & " " & Nom1
C'est ici que ca bug
'essai copie un userform'
Je vous remercie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Private Sub CommandButton1_Click() Workbooks("AFI essai macro V3.xlsm").VBProject.VBComponents("Userform1").Expo rt "frmtoto" Sheets(1).Copy ActiveWorkbook.VBProject.VBComponents.Import "frmtoto" 'fermer le userform' Unload UserForm_creation_synthese 'message enregistrement nouveau dossier' Call MsgBox("Veuillez enregistrer ce dossier nouvellement crée", , "Nouvelle synthèse créée") End Sub
Partager