Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Booster macro impression

  • Initiateur de la discussion Initiateur de la discussion totor
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

totor

Guest
Bonjour le forum,

j'ai fait une macro pour imprimer plusieurs onglet d'un même fichier excel. Mon problème, elle est vrziment longure. Sauriez vous s'il existe un moyen de booster l'impression?

Merci à tous

Bonne journée

Victor

Ma macro :
Sub Impression_syntheses()
'
' Impression_syntheses Macro
'
'

'
Sheets('P&L YTD').Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('P&L YTD 05').Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('PAGE4').Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$b$6:$N$40'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$Q$6:$AC$40'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$AF$6:$AR$40'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('PAGE4 05').Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$b$6:$n$40'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$q$6:$ac$40'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$af$6:$ar$40'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('PAGE4B').Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$b$4:$n$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$q$4:$ac$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$af$4:$ar$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('PAGE4C').Select
ActiveSheet.PageSetup.PrintArea = '$A$69:$n$79'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$b$4:$n$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$q$4:$ac$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$af$4:$ar$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$au$17:$bg$47'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$bj$17:$bv$47'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('PAGE4B qtr').Select
ActiveSheet.PageSetup.PrintArea = '$b$5:$n$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$q$5:$ac$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$af$5:$ar$39'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('DSO').Select
ActiveSheet.PageSetup.PrintArea = '$A$1:$i$20'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('Waterfall').Select
ActiveSheet.PageSetup.PrintArea = '$A$1:$k$50'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('ITO').Select
ActiveSheet.PageSetup.PrintArea = '$a$6:$i$30'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('ITOB').Select
ActiveSheet.PageSetup.PrintArea = '$a$6:$i$31'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$k$6:$s$31'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('DPO').Select
ActiveSheet.PageSetup.PrintArea = '$a$6:$i$25'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$a$34:$i$56'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = '$a$60:$i$82'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('HW').Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets('Capexp05').Select
ActiveSheet.PageSetup.PrintArea = '$a$1:$W$21'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True


End Sub
 
Salut,

Vu le nombre de page à imprimer, cela semble plutot normale que ce soit long.

Combien de temps dure la procedure?
Y a t il beaucoup de formules temps de calcul quand tu fais [F9]?

Tu peux gagner un peu de temps en ne selectionnant pas les feuilles
et en figeant l'affichage...

Essai comme ca pour voir ce que cela donne:
Code:
Sub Impression_syntheses()
'
' Impression_syntheses Macro
'
'

'
    Application.ScreenUpdating = False
    
    Sheets('P&L YTD').PrintOut Copies:=1, Collate:=True
    Sheets('P&L YTD 05').PrintOut Copies:=1, Collate:=True
    
    With Sheets('PAGE4')
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$b$6:$N$40'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$Q$6:$AC$40'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$AF$6:$AR$40'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('PAGE4 05')
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$b$6:$n$40'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$q$6:$ac$40'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$af$6:$ar$40'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('PAGE4B')
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$b$4:$n$39'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$q$4:$ac$39'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$af$4:$ar$39'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('PAGE4C')
        .PageSetup.PrintArea = '$A$69:$n$79'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$b$4:$n$39'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$q$4:$ac$39'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$af$4:$ar$39'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$au$17:$bg$47'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$bj$17:$bv$47'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('PAGE4B qtr')
        .PageSetup.PrintArea = '$b$5:$n$39'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$q$5:$ac$39'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$af$5:$ar$39'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('DSO')
        .PageSetup.PrintArea = '$A$1:$i$20'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('Waterfall')
        .PageSetup.PrintArea = '$A$1:$k$50'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('ITO')
        .PageSetup.PrintArea = '$a$6:$i$30'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('ITOB')
        .PageSetup.PrintArea = '$a$6:$i$31'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$k$6:$s$31'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    With Sheets('DPO')
        .PageSetup.PrintArea = '$a$6:$i$25'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$a$34:$i$56'
        .PrintOut Copies:=1, Collate:=True
        .PageSetup.PrintArea = '$a$60:$i$82'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    Sheets('HW').PrintOut Copies:=1, Collate:=True
    
    With Sheets('Capexp05')
        .PageSetup.PrintArea = '$a$1:$W$21'
        .PrintOut Copies:=1, Collate:=True
    End With
    
    Application.ScreenUpdating = True
End Sub
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
10
Affichages
789
Réponses
7
Affichages
366
Réponses
5
Affichages
904
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…