MACRO - Lancer l'exécution de 3 MACRO en une seule commande

Bonjour à vous,

Je voudrais savoir s'il est possible de lancer l'exécution de 3 MACRO en 1 seule fois.

Au départ j'avais opté pour une exécution d'une MACRO après l'autre suite à l'implémentation d'un tableau tout au long de l'année.

Vient maintenant le bilan et nous devons "recommencer" depuis le début de l'année pour des raisons diverses et variées, aussi je me demandais s'il était possible d'automatiser ces 3 étapes en une seule.

Je vous joins le code des 3 MACRO si ça peut vous aider

12macro.txt (986.00 Octets)

Bonjour

Essaie comme ça :

Option Explicit

Const rep = "C:\" 'repertoire

Sub copiervaleursem1() 'macro 1er semestre
    ActiveSheet.Copy 'créer un nouveau classeur avec une copie de la feuille active
    ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value 'remplacer les formules par leur résultat
    ActiveSheet.SaveAs rep & [A1] & ".xlsx", FileFormat:=51
    ActiveWorkbook.Close

    Call copiervaleursem2
    callcopiervaleursem3

End Sub

Sub copiervaleursem2() 'macro 2nd semestre
    Set sws = ActiveSheet
    Set wb = Workbooks.Open(rep & sws.Range("a1") & ".xlsx")
    sws.Copy after:=wb.Sheets(1)
    Set wsc = ActiveSheet
    wsc.UsedRange.Value = wsc.UsedRange.Value 'remplacer les formules par leur résultat
    wb.Close True
End Sub

Sub copiervaleursem3() 'macro Total
    Set sws = ActiveSheet
    Set wb = Workbooks.Open(rep & sws.Range("a1") & ".xlsx")
    sws.Copy after:=wb.Sheets(2)
    Set wsc = ActiveSheet
    wsc.UsedRange.Value = wsc.UsedRange.Value 'remplacer les formules par leur résultat
    wb.Close True
End Sub

Bye !

Bonjour et merci pour cette réponse.

Mon document d'origine comporte 3 feuilles, semestre 1, semestre 2 et bilan.

Quand j'exécute cette macro, elle créé un document à part qui contient 3 feuilles du semestre 1.

Les macro précédentes du début de ce message étaient exécutée une à une sur les bons onglets à chaque fois de sorte que le document créé comporte une feuille 1 nommée semestre 1, une feuille 2 nommée semestre 2 et une feuille 3 nommée Bilan.

Y a t-il un moyen pour qu'un macro globale permettre d'exécuter les trois l'une après l'autre en changeant de feuille ?

Ma réponse serait plus convainquante si elle s'appliquait à un fichier.

Tu devrais do nc joindre ton fichier, anonymisé si besoin...

Bye !

Bonjour, oui vous avez raison, un fichier support c'est beaucoup mieux.

Dans le fichier communiqué, je lance la 1er macro sur la feuille Semestre 1 pour créer une nouveau fichier, nommé un nom de pays particulier.

Sur la feuille 2 je lance la 2ème Macro qui va ajouter la feuille Semestre 2 dans le fichier précédemment crée.

Enfin, la 3ème Macro va y ajouter la Feuille Bilan.

Au final j'ai un nouveau fichier doté des feuilles Semestre 1, semestre 2 et Bilan

Mon objectif serait de réussir à lancer une seule fois une macro qui exécuterait toutes ces actions en une seule fois et sans avoir à changer manuellement de Feuille.

10tableau.xlsm (82.30 Ko)

up

Rechercher des sujets similaires à "macro lancer execution seule commande"