XL 2016 Imprimer deux zones d'impression sur une seule feuille

Bidexcel

XLDnaute Nouveau
Bonjour à tous je viens exposer mon projet un similaire au sujet
je disqpose dans mon classeur deux feuille que je voudrais imprimer en une seule. Pour ce faire j'ai nommer des zone d'impression

zone d'impression 1 nommée "METEO"
je voudrais l’imprimer en pdf en en portrait

Zone d'impression 2 nommée "Analyse"
cette zone est en effet un tableau que je voudrais imprimer à la suite de la première zone d'impression en PDF mais en "Paysage". Aussi le tableau étant petit serait t'il possible qu'il prennent tout les bord de la feuille en Paysage (c'est à dire zoomer au maximum sur la page) pour une meilleure lecture.

Capture.PNG


Je travaillais sur le code ci dessous
VB:
Sub Print_Janvier()
    ActiveSheet.PageSetup.PrintArea = "METEO" 'comment ajouter la seconde zone apres la première ici?
    With ActiveSheet.PageSetup
        .FitToPagesWide = 1
        .FitToPagesTall = 1
        .RightFooter = "&8&P/&N" '<-- numéro de page / nombre de pages (taille 8)
        .CenterHorizontally = True
        .CenterVertically = True
        .Orientation = xlLandscape
        .PaperSize = xlPaperA3
        .Zoom = False
    End With
    ActiveWindow.SelectedSheets.PrintPreview
End Sub
 
Solution
Bonjour Bidexcel, Sylvanu, Patricktoulon, Kiki29, le forum

Un essai :

Code:
Sub BoutonPrintPDF()

Application.ScreenUpdating = False
'Dim Sh1 As Worksheet
Dim Sh2 As Worksheet
Dim Sh3 As Worksheet

'Set Sh1 = Feuil1                'Codename de la feuille "Menu"
Set Sh2 = Feuil1                'A adapter en fonction du codename de la feuille "Meteo"
Set Sh3 = Feuil2                'A adapter en fonction du codename de la feuille "Analyse"

With Sh2.PageSetup
    .PrintArea = "A4:X50"       'Zone d'impression à adapter de la feuille Meteo
    .Zoom = False
    .FitToPagesWide = 1
    .FitToPagesTall = 1
    'Réglage des marges
    .LeftMargin = Application.InchesToPoints(0.1)   'Marge gauche
    .RightMargin =...

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour BidExcel,
Au vu du nombre de réponses il ne doit guère y avoir de solution à votre problème.
Comme vous avez l'air de bien manier le VBA, une autre solution :
1- Créer une feuille
2- Importer les données, les mettre en forme
3- Imprimer cette feuille en pdf
4- Supprimer cette feuille.
L'avantage est que vous avez tout loisir de mettre sous la forme que vous voulez et importer que les données utiles donc dans une taille lisible.
 

Bidexcel

XLDnaute Nouveau
Dernière édition:

kiki29

XLDnaute Barbatruc
Salut, avec des demandes construites à la Ribéry, difficile de te comprendre, surtout que ça a évolué ...
je disqpose dans mon classeur deux feuille que je voudrais imprimer en une seule. Pour ce faire j'ai nommer des zone d'impression

zone d'impression 1 nommée "METEO"
je voudrais l’imprimer en pdf en en portrait

Zone d'impression 2 nommée "Analyse"
cette zone est en effet un tableau que je voudrais imprimer à la suite de la première zone d'impression en PDF mais en "Paysage". Aussi le tableau étant petit serait t'il possible qu'il prennent tout les bord de la feuille en Paysage (c'est à dire zoomer au maximum sur la page) pour une meilleure lecture.

Jai testé le code en replacer les noms et cellules du fichier mais mon problème est qu'il imprime toute les pages dans la même feuilles alors que je veux l'impression page par page
Un échantillon ( sans données confidentielles ) de ton fichier pdf serait utile. Sinon comme je dis toujours : pas de bras pas de chocolat ...
 
Dernière édition:

Phil69970

XLDnaute Barbatruc
Bonjour Bidexcel, Sylvanu, Patricktoulon, Kiki29, le forum

Un essai :

Code:
Sub BoutonPrintPDF()

Application.ScreenUpdating = False
'Dim Sh1 As Worksheet
Dim Sh2 As Worksheet
Dim Sh3 As Worksheet

'Set Sh1 = Feuil1                'Codename de la feuille "Menu"
Set Sh2 = Feuil1                'A adapter en fonction du codename de la feuille "Meteo"
Set Sh3 = Feuil2                'A adapter en fonction du codename de la feuille "Analyse"

With Sh2.PageSetup
    .PrintArea = "A4:X50"       'Zone d'impression à adapter de la feuille Meteo
    .Zoom = False
    .FitToPagesWide = 1
    .FitToPagesTall = 1
    'Réglage des marges
    .LeftMargin = Application.InchesToPoints(0.1)   'Marge gauche
    .RightMargin = Application.InchesToPoints(0.1)  'Marge droite
    .TopMargin = Application.InchesToPoints(0.1)    'Marge haut de page
    .BottomMargin = Application.InchesToPoints(0.1) 'Marge bas de page
'    .Orientation = xlLandscape                      'Paysage
    .Orientation = xlPortrait                       'Portrait
End With

With Sh3.PageSetup
    .PrintArea = "A2:M30"       'Zone d'impression à adapter de la feuille Analyse
    .Zoom = False
    .FitToPagesWide = 1
    .FitToPagesTall = 1
    'Réglage des marges
    .LeftMargin = Application.InchesToPoints(0.1)   'Marge gauche
    .RightMargin = Application.InchesToPoints(0.1)  'Marge droite
    .TopMargin = Application.InchesToPoints(0.1)    'Marge haut de page
    .BottomMargin = Application.InchesToPoints(0.1) 'Marge bas de page
    .Orientation = xlLandscape                      'Paysage
    '.Orientation = xlPortrait                       'Portrait
End With

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\" & "Meteo_Analyse.pdf"

Set Sh2 = Nothing               'Decharge la feuille 2
Set Sh3 = Nothing               'Decharge la feuille 3

Application.ScreenUpdating = True

End Sub

Cordialement
 

Discussions similaires

Réponses
5
Affichages
749

Statistiques des forums

Discussions
311 733
Messages
2 082 019
Membres
101 872
dernier inscrit
Colin T