Excel : Sauvegarder Des Onglets Dans Un Fichier PDF
Maybe your like
Il y a quelque temps, je publiais un article donnant une procédure afin de faire la liste des onglets d’un fichier Excel et, par la suite, d’en imprimer une sélection. Cela se faisait à l’aide de macros VBA. Voir à ce sujet les articles Excel: Créer automatiquement la liste des noms d’onglets d’un fichier et Excel: Imprimer une sélection d’onglets dans un fichier. À la suite de commentaires d’utilisateurs, force est de constater qu’il y a également un besoin afin d’enregistrer les feuilles Excel sous format PDF, au lieu de simplement les imprimer.
Les mêmes commentaires font mention de la possibilité de définir une imprimante qui est en fait un pilote de création de fichiers PDF. Toutefois, ce moyen est complexe alors que, depuis Excel 2007, il est possible de sauvegarder directement les onglets désirés d’un fichier Excel en format PDF. Nous allons donc reprendre la procédure déjà décrite dans Excel: Imprimer une sélection d’onglets dans un fichier et la modifier afin de sauvegarder ces feuilles Excel dans un fichier PDF.
Étapes afin de modifier la macro
Les étapes 1 à 3 sont les mêmes, soit de mettre en page les onglets comme pour l’impression, de s’assurer que tous les onglets soient bien nommés (sinon, faire rouler la macro de Excel: Créer automatiquement la liste des noms d’onglets d’un fichier et mettez des 1 vis-à-vis des onglets que vous voulez sauvegarder en PDF, tel que montré ci-bas:

Comme dans l’article précédent, le nom des onglets doit commencer à la cellule B5 et la sélection 1 ou 0, à la cellule C5. Une fois le tout bien configuré, la procédure suivante va créer un fichier PDF, choisi par l’usager, en fonction des onglets qu’il a décidé de sauvegarder. Il est à noter ici que la sauvegarde des onglets se fait selon la mise en page pour impression de ces dits onglets. Ce paramètre peut être modifié et sera expliqué plus bas.
Vous souhaitez créer et personnaliser des outils de gestion automatisés dans Excel pour mieux répondre aux besoins spécifiques de votre entreprise ? Apprenez à les développer et les présenter avec des interfaces conviviales pour les usagers en suivant nos formations en programmation de macros VBA. |
|---|
La procédure en VBA pour enregistrer des feuilles Excel sous format PDF
Sub SauverEnPDF() ' Un exemple de sauvegarde des onglets sélectionnés en PDF Dim vararray() As String ' Afin de conserver les noms des onglets sélectionnés Dim csname As Integer ' Colonne où se trouve le nom des onglets Dim c As Integer ' Colonne où se trouve les choix 1 ou 0 Dim countarr As Integer ' Pour compter le nombre d'onglets sélectionnés Dim r As Integer ' Pour compter à travers tous les onglets Dim sname As Worksheet ' Nom de l'onglet de départ, pour y revenir à la fin Dim strFileName As String ' Nom du fichier à sauvegarder 'set up location and counter variables csname = Range("B5").Column c = Range("C5").Column Set sname = ActiveSheet r = Range("C5").Row countarr = 0 ' Boucle dans la iste des onglets tant qu'il y a un nom d'onglet While sname.Cells(r, csname) <> "" ' Ajouter le nom de l'onglet à la liste si le choix est 1 If sname.Cells(r, c) = 1 Then ReDim Preserve vararray(countarr) ' Un ReDim Preserve permet d'augmenter la taille de la variable tout en préservant son contenu vararray(countarr) = sname.Cells(r, csname).Value countarr = countarr + 1 End If r = r + 1 Wend ' On sélection ensuite le groupe d'onglets sélectionnés Sheets(vararray).Select strFileName = Application.GetSaveAsFilename(filefilter:="PDF Files (*.pdf), *.pdf", Title:="Entrez le nom du fichier") ' Il faut s'assurer que l'usager a bel et bien fait un choix. ' Sinon, le nom du fichier sera false ou faux, si Excel français If strFileName <> "False" And strFileName <> "Faux" Then ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFileName _ , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _ :=False, OpenAfterPublish:=False ' Ici, on va sauvegarder en fonction de la mise en page pour impression End If ' On sort en revenant à l'onglet de départ sname.Select set sname = Nothing End SubPetits points à noter pour enregistrer des feuilles Excel sous format PDF
- Si le fichier PDF choisi existe déjà, il sera tout bonnement remplacé.
- Si le fichier PDF est ouvert, il y aura une erreur d’exécution.
- Le paramètre du ExportAsFixedFormat nommé IgnorePrintAreas est configuré à False. Donc, le PDF va suivre la mise en page. Si on ne veut pas cela, on va plutôt allouer la valeur True à ce paramètre.
- Il est également possible de forcer l’ouverture du fichier PDF. Il s’agit du paramètre OpenAfterPublish. C’est à vous de voir.
- Finalement, on utilise l’application GetSaveAsFilename de MS Office. On peut passer un filtre de fichier et le titre de la fenêtre (Title). Voyez plutôt:

Je vous invite à tester le tout et à nous laisser vos commentaires ci-bas.
Formation complémentaire
Pour une introduction à la programmation avec le langage VBA, qui permet de sauver du temps et de réduire les risques d’erreurs en automatisant certaines tâches et certains processus, afin de développer des solutions robustes dans Excel, suivez la formation Excel – VBA (niveau 1).
Voici quelques commentaires d’apprenants ayant suivi cette formation :
La mission du CFO masqué est de développer les compétences techniques des analystes et des contrôleurs de gestion en informatique décisionnelle avec Excel et Power BI et favoriser l’atteinte de leur plein potentiel, en stimulant leur autonomie, leur curiosité, leur raisonnement logique, leur esprit critique et leur créativité.
Tag » Code Vba Pour Enregistrer Une Feuille Excel En Pdf
-
Enregistrer Un Fichier Excel En PDF Avec Un Code VBA - YouTube
-
Excel VBA Enregistrer Sous (Imprimer) Vers PDF
-
Comment Exporter Une Feuille En PDF Avec Du VBA
-
Enregistrer Une Feuille Sous PDF Avec Nom Dans Une Cellule
-
VBA-Enregistrer Feuilles Au Format PDF
-
Utilisez Le Bouton De Commande Pour Enregistrer La Feuille De Calcul ...
-
Sauvegarder Une Feuille En PDF Dans Un Sous Dossier Du Classeur
-
[PDF] Code Vba Pour Enregistrer Une Feuille Excel En Pdf - Weebly
-
Enregistrer Doc Excel En Pdf, Avec Nom Variable + Impression.
-
Exporter Plusieurs Feuilles D'un Classeur Excel En PDF - Bonbache
-
Macro Enregistrer En Pdf Feuille Excel Avec Nom D'une Cellule ...
-
Comment Utiliser VBA Pour Enregistrer Dans Excel Au Format PDF
-
Comment Convertir Excel En PDF En Utilisant VBA
-
Excel VBA Pour Exporter Les Feuilles Sélectionnées Au Format PDF
Vous souhaitez créer et personnaliser des outils de gestion automatisés dans Excel pour mieux répondre aux besoins spécifiques de votre entreprise ? Apprenez à les développer et les présenter avec des interfaces conviviales pour les usagers en suivant nos formations en programmation de macros VBA.