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

Export plusieurs plages en Pdf

Calvus

XLDnaute Barbatruc
Bonsoir le forum,

Je voudrais exporter 2 plages non contigues en pdf. La sélection se fait mais l'exportation en pdf comprend toute la plage, y compris celle non sélectionnée.

Y a t'il un moyen ? J'ai tenté Array, mais sans succès.

VB:
If [C83] <> "" Then
Range("B1:H56, B65:H120").Select
Else
Range("A1:H56").Select
End If



Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin, _
    Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
Range("I18").Select

Merci
 

DoubleZero

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Bonjour, Calvus , le Forum,

Peut-être ainsi :

Code:
Option Explicit
Sub Pdf()
    Application.ScreenUpdating = False
    If [C83] <> "" Then
        Sheets.Add.Name = "pdf"
        Sheets("Feuil1").Range("B1:H56,B65:H120").Copy Destination:=Sheets("pdf").Range("A1")
        ' emplacement et nom adapter
        Sheets("pdf").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
                                          "C:\Users\00\Downloads\Calvus.pdf", Quality:=xlQualityStandard, _
                                          IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
                                          False
        Application.DisplayAlerts = False
        Sheets("pdf").Delete
        Application.DisplayAlerts = True
    Else
        Range("A1:H56").Select
    End If
    Application.ScreenUpdating = True
End Sub

A bientôt
 

Calvus

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Bonjour 00, le forum,

Merci Gardienne de mes codes

J'avais bien pensé à créer une feuille temporaire, mais je voulais savoir si l'on pouvait faire autrement. On dirait que non.

Ceci étant, ton code fonctionne très bien, mais.... comment faire pour conserver les formats ?
Et indiquer le nombre de lignes pour avoir 2 pages Pdf identiques ? Il faudrait une dizaine de lignes vides sur la copie entre les 2 sélections.

Merci

A bientôt

Message modifié suite à une 1ère réponse envoyée sans bien réfléchir....
 
Dernière édition:

DoubleZero

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Re-bonjour,

... je voulais savoir si l'on pouvait faire autrement. On dirait que non.

Ceci étant, ton code bogue chez moi à la 3eme ligne :
Sheets("Feuil1").Range("B1:H56,B65:H120").Copy Destination:=Sheets("pdf").Range("A1")...

Peut-être est-il possible d'agir autrement mais... comment ? Je ne le sais pas.

Le couac serait-il dû au nom de l'onglet ("Feuil1") ?

Si tu souhaites éviter le passage par un onglet temporaire, reste à masquer les lignes et colonnes indésirables dans le PDF.

A bientôt
 

MJ13

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Bonjour Calvus, 00

Pour ce genre de problème, le mieux serait de faire un test en copiant tes 2 plages sur une feuille et en mettant un saut de page (si j'ai bien compris).

Ensuite tu imprimes ta feuille en PDF.

PS: sinon masquer les lignes serait un test à faire comme l'a suggéré 00 .
 

DoubleZero

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Re-bonjour, bonjour, Michel ,

... ton code fonctionne très bien, mais.... comment faire pour conserver les formats...

Ah, voilà qui est rassurant. Pour conserver les formats :

Code:
Option Explicit
Sub Pdf_v2_formats_conservés()
    Application.ScreenUpdating = False
    If [C83] <> "" Then
        Sheets.Add.Name = "pdf"
        Sheets("Feuil1").Range("B1:H56,B65:H120").Copy
        With Sheets("pdf").Range("A2")
            .PasteSpecial Paste:=xlPasteColumnWidths
            .PasteSpecial Paste:=xlPasteAll
        End With
        Application.CutCopyMode = False
        ' emplacement et nom adapter
        Sheets("pdf").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
                                          "C:\Users\00\Downloads\Calvus.pdf", Quality:=xlQualityStandard, _
                                          IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
                                          False
        Application.DisplayAlerts = False
        Sheets("pdf").Delete
        Application.DisplayAlerts = True
    Else
        Range("A1:H56").Select
    End If
    Application.ScreenUpdating = True
End Sub

... indiquer le nombre de lignes pour avoir 2 pages Pdf identiques ? Il faudrait une dizaine de lignes vides sur la copie entre les 2 sélections...

Là, moi pas comprendre le besoin.

A bientôt
 

MJ13

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Re

Pour les sauts de page, il faut aller dans le mode Affichage et on doit voir les sauts de pages. On peut aussi l'insérer avec un click droit en mode Mise en Page et aperçu des sauts de page et choisir Insérer un saut de page.

Sinon en macro, on peut insérer un saut de page avec le code:

Code:
 ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
 

Calvus

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Re,

Ben voilà qui est mieux 00 ! Il faut toujours attendre pour que tu sois efficace !!

Bon, plus sérieusement, c'est mieux, mais toujours pas ça car les colonnes sont ajustées. J'envoie une copie de la feuille en question avec les bons formats.

Merci
 

Pièces jointes

  • Pdf 2 pages.xlsx
    36.9 KB · Affichages: 24

Calvus

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Re,

Michel, j'ai adapté ton code mais ce n'est pas ça. Ou peut être ne sais je pas faire correctement.

Bon, j'ai réglé mon problème en faisant tout simplement Range("B1:H120").Select de mon 1er code. #1

tant pis pour celui là. Je verrai au prochain problème qui se posera.

Merci et bon we
 

Calvus

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Coucou Zèbre,

Ne t'embête pas. Comme je te l'ai dit, j'ai réglé le problème. Il faut simplement que je m'assure de ne rien écrire dans les lignes 57 à 63. Sinon ça fonctionne.

Garde de l'énergie pour ma prochaine question.... car mon problème de noms copiés n'est toujours pas résolu lui....

A bientôt
 

DoubleZero

XLDnaute Barbatruc
Re : Export plusieurs plages en Pdf

Re-bonjour,

Une autre façon d'agir, à tester...

Si des rayures apparaissaient, je devrais revoir ma copie !

A bientôt

Nota : les parties "condition" et "nom du PDF" sont laissées de côté.
 

Pièces jointes

  • 00 - Calvus - PDF.xlsm
    144.8 KB · Affichages: 34

Discussions similaires

Réponses
3
Affichages
616
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…