Sauvegarde facture en PDF, la zone d'impression saute aléato

Bonsoir,

Pour sauvegarder en PDF une facture créée sur une feuille de calcul, un bouton déclenche la macro suivante (F37 contient le numéro de facture et I19 le nom du client):

Sub Bouton29_QuandClic()

Dim sNomFichierPDF As String

sNomFichierPDF = "facture #" & Sheets("Facturation").Range("f37") & " " & Range("i19") & ".pdf"

With Sheets(Array("Facturation")).Select

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sNomFichierPDF _

, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _

:=False, OpenAfterPublish:=False

End With

MsgBox "Facture PDF sauvegardée"

End Sub

Cela fonctionne assez bien, mais parfois la zone d'impression saute toute seule et découpe la facture en autant de zones d'impression que de cellules, le pdf sauvegardé ne contient alors qu'une cellule... La zone d'impression initiale s'étant de C1 à M78 et ne doit bien sûr pas être modifiée. Merci pour votre aide.

Dul

Bonsoir,

Un fichier peut-être ?

@ bientôt

LouReeD

rebonsoir,

voilà le fichier, il se peut qu'il fonctionne correctement sur l'édition de plusieurs factures, mais la zone d'impression sautera assez rapidement...

Merci pour votre aide

dul a écrit :

Bonsoir,

Pour sauvegarder en PDF une facture créée sur une feuille de calcul, un bouton déclenche la macro suivante (F37 contient le numéro de facture et I19 le nom du client):

Sub Bouton29_QuandClic()

Dim sNomFichierPDF As String

sNomFichierPDF = "facture #" & Sheets("Facturation").Range("f37") & " " & Range("i19") & ".pdf"

With Sheets(Array("Facturation")).Select

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sNomFichierPDF _

, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _

:=False, OpenAfterPublish:=False

End With

MsgBox "Facture PDF sauvegardée"

End Sub

Cela fonctionne assez bien, mais parfois la zone d'impression saute toute seule et découpe la facture en autant de zones d'impression que de cellules, le pdf sauvegardé ne contient alors qu'une cellule... La zone d'impression initiale s'étant de C1 à M78 et ne doit bien sûr pas être modifiée. Merci pour votre aide.

Dul

Bonsoir

Procede ainsi dans tous les cas la zone est redefinie

      ActiveSheet.PageSetup.PrintArea = "$C$1:$M$78"    ' ajout pour forcer la zone à chaque fois

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sNomFichierPDF _
        , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=False 

Merci, ça fonctionne parfaitement.

Bonne soirée.

dul a écrit :

Merci, ça fonctionne parfaitement.

Bonne soirée.

Parfait

Rechercher des sujets similaires à "sauvegarde facture pdf zone impression saute aleato"