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
724

Statistiques des forums

Discussions
312 318
Messages
2 087 208
Membres
103 493
dernier inscrit
Vidal Salvador