macro impression sur 1 seule page avec des plages de cellules multiples

rh.finances

XLDnaute Occasionnel
Bonsoir à tous les internautes amateurs de ce site convivial et très instructif !

n'étant pas un expert de VBA, je sollicite l'aide des contributeurs de XL Download sur un problème pour lequel je tourne en rond.

j'ai créé un fichier de gestion de planning qui figure en pièce jointe de ce post.
sur la ligne A271, j'ai créé 1 bouton "impression planning février" avec une macro

Cette macro a pour but de lancer une impression sur une seule page de chacun des mois du planning.
Pour ce faire, j'ai créé un nom "planning_février" qui regroupe les trois plages suivantes :
  • $A$1:$AM$3
  • $A$25:$AM$46
  • $A$267:$AM$286
toutefois, ma macro n'est pas bonne car avec un nom de plage subdivisé en 3 sections différentes, l'impression s'effectue sur 3 pages différentes alors que je voudrais avoir un édition avec une mise en page : d'une page en largeur et d'une page en hauteur (bref, une seule page quoi).

a titre d'information, ma macro est la suivante :
Code:
Sub Bouton1128_Cliquer()

Range("plage_annuelle").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Name = "maplage"
ActiveSheet.PageSetup.PrintArea = "plage_février"
With ActiveSheet.PageSetup
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 1
       .CenterHorizontally = True
        .CenterVertically = True
        .Orientation = xlLandscape
        .PaperSize = xlPaperA3
    End With
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Preview:=True, Collate:=True 'pour supprimer apercu avant impression, enlever "Preview:=true


End Sub

d'avance, merci à vous tou(te)s pour votre aide sur cette problématique que je n'ai pas réussi à résoudre malgré la consultation de plusieurs sites.

Alex
 

Pièces jointes

  • v.2 - planning travail annualisé.xls
    428.5 KB · Affichages: 39

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir rh.finances,

Une piste avec le code :
VB:
Sub Bouton1128_Cliquer()
   Range("plage_annuelle").Rows.Hidden = True
   Range("plage_février").Rows.Hidden = False
   ActiveSheet.PageSetup.PrintArea = "plage_annuelle"
   With ActiveSheet.PageSetup
      .Zoom = False
      .FitToPagesWide = 1
      .FitToPagesTall = 1
      .CenterHorizontally = True
      .CenterVertically = True
      .Orientation = xlLandscape
      .PaperSize = xlPaperA3
   End With
   ActiveSheet.PrintOut Copies:=1, Preview:=True, Collate:=True
   Range("plage_annuelle").Rows.Hidden = False
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
315 098
Messages
2 116 193
Membres
112 679
dernier inscrit
Yupanki