VBA : Insertion de saut de page

  • Initiateur de la discussion Initiateur de la discussion dionys0s
  • 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 !

dionys0s

XLDnaute Impliqué
Bonjour le forum

j'ai une zone d'impression comme ceci par exemple :
ZonImpr = "A1:AY27,A28:AY45,AZ46:BL63,BM64:BT75,BM76:BT87"

et j'aimerais, juste après avoir défini la zone d'impression (Feuil.PageSetup.PrintArea = Feuil.Range(ZonImpr).Address(False, False)) ajouter un saut de page entre chaque zone de la zone d'impression.

D'avance merci pour votre aide ^^
 
Re : VBA : Insertion de saut de page

Bonjour dionys0s, le forum,

Il faudrait savoir ce que vous voulez imprimer exactement.

S'il s'agit d'imprimer chacune des 5 zones sur une page en largeur, l'ajout de sauts de page n'est pas une bonne solution.

Il faut alors imprimer chaque zone séparément :

Code:
Sub Imprimer()
Dim ZonImpr$, s
ZonImpr = "A1:AY27,A28:AY45,AZ46:BL63,BM64:BT75,BM76:BT87"
With ActiveSheet.PageSetup 'feuille à définir
  .Orientation = xlLandscape
  .Zoom = False
  .FitToPagesWide = 1
  .FitToPagesTall = False
  .Parent.ResetAllPageBreaks
  For Each s In Split(ZonImpr, ",")
    .PrintArea = .Parent.Range(s).Address
    .Parent.PrintPreview '.Parent.PrintOut
  Next
  '---RAZ facultatif---
  .Zoom = 100
  .FitToPagesWide = False
  .PrintArea = ""
End With
End Sub
A+
 
Dernière édition:
Re : VBA : Insertion de saut de page

Re,

Avec des sauts de page horizontaux et une seule impression :

Code:
Sub Imprimer()
Dim ZonImpr$, s
ZonImpr = "A1:AY27,A28:AY45,AZ46:BL63,BM64:BT75,BM76:BT87"
With ActiveSheet 'feuille à définir
  With .PageSetup
    .Orientation = xlLandscape
    .Zoom = False
    .FitToPagesWide = 1 '1 page en largeur
    .FitToPagesTall = False
    .Parent.ResetAllPageBreaks
    .PrintArea = ZonImpr
  End With
  For Each s In Split(ZonImpr, ",")
    .HPageBreaks.Add .Range(Split(s, ":")(1))(2)
  Next
  .PrintPreview '.PrintOut
End With
End Sub
A+
 
- 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

Discussions similaires

R
Réponses
1
Affichages
3 K
D
Réponses
2
Affichages
1 K
Danyspeed
D
D
Réponses
15
Affichages
2 K
G
Retour