Créer un PDF avec entête et pied de page
M
Bonjour à tous !
J'ai une base de données excel et je souhaiterais la passer en PDF, avec un entête et un pied de page choisis, et ce en format paysage.
Il me faudrait donc une macro qui prend 15 lignes de mon tableau, et en fasse un PDF avec un en tête et un pied de page, sous format paysage, de manière répétée jusqu'à la fin de la base de données.
Est ce possible ?
Merci beaucoup pour votre aide !!
Bonjour MattM,
un code à tester et à adapter, le fichier pdf est enregistré dans le même dossier que le classeur excel. En l'absence d’informations plus précises de ta part j'ai prévu la date dans l'en-tête et un texte fixe dans le pied de page:
Sub test()
Dim DerLig As Integer, x As Integer, i As Integer, y As Integer, DerCol As Integer
Dim Chemin As String, MonFichier As String
Dim MaPlage As Range
Chemin = ThisWorkbook.Path & "\"
y = 1 ' Nom du premier fichier PDF incrémenté à chaque boucle
DerLig = Cells(Rows.Count, 1).End(xlUp).Row
DerCol = Cells(1, Columns.Count).End(xlToLeft).Column
Application.ScreenUpdating = False
For i = 1 To DerLig
MonFichier = Chemin & y & ".pdf"
Set MaPlage = Range("A" & i).Resize(15, DerCol)
With ActiveSheet.PageSetup
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
.CenterHeader = "&D" 'Affiche la date Section centrale de l'en-tête
.RightFooter = "mon pied de page" ' texte fixe Section droite du pied de page
End With
MaPlage.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=MonFichier, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
i = i + 14 ' Ajoute 14 lignes
y = y + 1
Next i
Application.ScreenUpdating = True
End Sub
Cordialement.