XL 2016 Macro mise en page

KTM

XLDnaute Impliqué
Bonsoir Forum
J'ai un soucis avec ma macro.
Je voudrais sauvegarder au format pdf mais toutes les colonnes de mon tableau ne tiennent pas sur la largeur d'une feuille

Sub SAVE_liste()
Application.ScreenUpdating = False

Set f = Sheets("RDV")
Set p = f.Range("A1", f.Cells(Rows.Count, "K").End(3))

dl = f.Range("A" & Rows.Count).End(xlUp).Row

Worksheets("RDV").Columns("A:K").AutoFit

chemin = ThisWorkbook.Path & "\Stables\"
If Dir(chemin, vbDirectory) = "" Then MkDir chemin

NomPDF = Month(Sheets("TB").Range("B11")) & "-" & "Liste Stables " & "" & Sheets("TB").Range("B8") & "" & Format(Sheets("TB").Range("B11"), " mmmm yyyy")
f.PageSetup.CenterHeader = " PATIENTS STABLES" & " " & Sheets("TB").Range("B8") & " " & Format(Sheets("TB").Range("B11"), " mmmm yyyy")
f.PageSetup.RightFooter = "&P de &N"
f.PageSetup.PrintArea = "$A$1:$H$" & dl
p.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & NomPDF, Quality:=xlQualityStandard

Set f = Nothing
Set p = Nothing
End Sub
 

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Tu peux utiliser la balise "code=vb" pour plus de clarté, si tu veux ;) :
VB:
Sub SAVE_liste()
Application.ScreenUpdating = False

Set f = Sheets("RDV")
Set p = f.Range("A1", f.Cells(Rows.Count, "K").End(3))

dl = f.Range("A" & Rows.Count).End(xlUp).Row

Worksheets("RDV").Columns("A:K").AutoFit

chemin = ThisWorkbook.Path & "\Stables\"
If Dir(chemin, vbDirectory) = "" Then MkDir chemin

NomPDF = Month(Sheets("TB").Range("B11")) & "-" & "Liste Stables " & "" & Sheets("TB").Range("B8") & "" & Format(Sheets("TB").Range("B11"), " mmmm yyyy")
f.PageSetup.CenterHeader = " PATIENTS STABLES" & " " & Sheets("TB").Range("B8") & " " & Format(Sheets("TB").Range("B11"), " mmmm yyyy")
f.PageSetup.RightFooter = "&P de &N"
f.PageSetup.PrintArea = "$A$1:$H$" & dl
p.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & NomPDF, Quality:=xlQualityStandard

Set f = Nothing
Set p = Nothing
End Sub

Tu veux quoi comme aide exactement ?
Si tu veux que toutes tes colonnes tiennent dans la largeur d'une page, tu dois pouvoir ajouter ceci :
f.PageSetup.FitToPagesWide = 1
 

KTM

XLDnaute Impliqué
Bonjour,

Tu peux utiliser la balise "code=vb" pour plus de clarté, si tu veux ;) :
VB:
Sub SAVE_liste()
Application.ScreenUpdating = False

Set f = Sheets("RDV")
Set p = f.Range("A1", f.Cells(Rows.Count, "K").End(3))

dl = f.Range("A" & Rows.Count).End(xlUp).Row

Worksheets("RDV").Columns("A:K").AutoFit

chemin = ThisWorkbook.Path & "\Stables\"
If Dir(chemin, vbDirectory) = "" Then MkDir chemin

NomPDF = Month(Sheets("TB").Range("B11")) & "-" & "Liste Stables " & "" & Sheets("TB").Range("B8") & "" & Format(Sheets("TB").Range("B11"), " mmmm yyyy")
f.PageSetup.CenterHeader = " PATIENTS STABLES" & " " & Sheets("TB").Range("B8") & " " & Format(Sheets("TB").Range("B11"), " mmmm yyyy")
f.PageSetup.RightFooter = "&P de &N"
f.PageSetup.PrintArea = "$A$1:$H$" & dl
p.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & NomPDF, Quality:=xlQualityStandard

Set f = Nothing
Set p = Nothing
End Sub

Tu veux quoi comme aide exactement ?
Si tu veux que toutes tes colonnes tiennent dans la largeur d'une page, tu dois pouvoir ajouter ceci :
f.PageSetup.FitToPagesWide = 1
MERCI
 

Discussions similaires

Réponses
0
Affichages
701

Statistiques des forums

Discussions
312 113
Messages
2 085 426
Membres
102 888
dernier inscrit
medoit