Comment imprimer au format PDF à l’aide de VBA (avec exemple)
Vous pouvez utiliser la syntaxe suivante dans VBA pour imprimer la feuille Excel actuellement active au format PDF :
Sub PrintToPDF()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:="my_data.pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=False, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
Cette macro particulière imprimera la feuille Excel actuellement active dans un PDF appelé my_data.pdf et elle sera enregistrée dans le dossier actuel.
Remarque n°1 : Vous pouvez également inclure un chemin de fichier complet dans l’argument Nom de fichier pour enregistrer le PDF dans un dossier spécifique.
Note #2 : La ligne OpenAfterPublish:= True indique à VBA d’ouvrir le PDF dès son export. Vous pouvez omettre cet argument si vous ne souhaitez pas que le PDF soit ouvert après l’exportation.
Remarque n°3 : Le seul argument obligatoire dans la méthode ExportAsFixedFormat est Type , qui doit être défini sur xlTypePDF pour imprimer la feuille au format PDF.
L’exemple suivant montre comment utiliser cette macro dans la pratique.
Exemple : exporter une feuille Excel au format PDF à l’aide de VBA
Supposons que nous ayons la feuille Excel suivante contenant des informations sur divers joueurs de basket-ball :
Supposons maintenant que nous souhaitions exporter cette feuille vers un PDF appelé my_data.pdf .
Nous pouvons créer la macro suivante pour ce faire :
Sub PrintToPDF()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:="my_data.pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=False, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
Lorsque nous exécutons cette macro, la feuille Excel est exportée vers un PDF puis le PDF est automatiquement ouvert :
Notez que le formatage exact des cellules avec les bordures et la couleur de remplissage est inclus dans le PDF.
Remarque : Vous pouvez trouver la documentation complète de la méthode ExportAsFixedFormat dans VBA ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
VBA : comment créer des dossiers
VBA : comment supprimer des dossiers
VBA : comment supprimer des fichiers