Comment exporter un ou plusieurs graphiques dans un fichier PDF (ou JPG) avec Excel ?
Dans ce tutoriel, je vais vous montrer comment exporter ou enregistrer des graphiques sous forme de fichiers PDF avec Excel.
Après avoir créé des graphiques dans Excel, vous souhaiterez peut-être pouvoir les exporter pour les intégrer dans d’autres documents ou les imprimer facilement.
Je vais vous présenter deux méthodes pour atteindre cet objectif. La première méthode consiste à exporter ou enregistrer un graphique dans un fichier PDF séparé, tandis que la deuxième méthode vous permettra d'exporter plusieurs graphiques dans un seul fichier PDF.
Ensuite, nous verrons également comment exporter facilement ces graphiques en tant qu'images de haute définition au format JPG ou PNG en seulement un clic.
Téléchargement
Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :
Tutoriel Vidéo
1. Exporter ou enregistrer un graphique dans un fichier PDF séparé dans Excel
Pour illustrer ce tutoriel, nous allons utiliser un classeur Excel contenant une seule feuille de calcul avec une série de graphiques.
Pour exporter rapidement un graphique dans un fichier PDF, c’est très simple.
Il suffit en effet de le sélectionner en cliquant sur celui-ci, puis de générer le PDF de manière tout à fait classique, en nous rendant dans le menu « Fichier » du ruban, puis en sélectionnant la catégorie « Exporter ».
Depuis « Créer un document PDF/XPS », nous allons cliquer sur le bouton « Créer PDF / XPS ».
Il ne reste plus qu’à sélectionner le répertoire d’enregistrement et à donner un nom au fichier PDF pour générer celui-ci.
Il est également possible de cocher l’option « Ouvrir le fichier après la publication pour que celui-ci s’affiche automatiquement dans notre application de lecture PDF favorite.
Pour finir, nous cliquons sur le bouton « Publier » pour valider la création du document.
En revanche, comme nous pouvons le constater, l’orientation de la page ne correspond pas à celle du graphique.
Il faut en effet les règles de mise en page objet par objet pour l’édition.
Ensuite, la génération d’un PDF étant assimilée à une impression numérique, celles-ci seront utilisées pour la création du PDF.
Il est ainsi possible de basculer l’édition en mode paysage depuis le menu « Mise en page » du ruban, à condition d’avoir sélectionné préalablement le graphique :
Nous pouvons également réduire la taille des marges :
Une fois ces opérations terminées, nous pouvons générer un nouveau fichier PDF en répétant les mêmes opérations :
2. Exporter plusieurs graphiques sur un PDF unique
Maintenant, supposons que nous souhaitions exporter tous les graphiques de la feuille de calcul sur un PDF unique.
Pour cela, nous allons commencer par dupliquer ces derniers vers une nouvelle feuille de calcul en les sélectionnant tous, en maintenant la touche [Ctrl] du clavier enfoncée.
Pour faciliter la sélection des objets de la feuille de calcul, il est également possible d’afficher le volet latéral, en déroulant le menu « Rechercher et sélectionner » de l’onglet « Accueil » afin de cliquer sur « Volet Sélection… » :
De cette manière, tous les objets présents sur la feuille sont regroupés sur ce volet qu’il sera ainsi plus simple de sélectionner, toujours en maintenant la touche [Ctrl] enfoncée.
Ensuite, nous allons copier ces graphiques sélectionnés en utilisant le célèbre [Ctrl]+[C]
Il ne reste plus qu’à insérer une nouvelle feuille de calcul en cliquant sur le bouton « + » de la barre des onglets.
Une fois la feuille insérée, nous allons dupliquer les graphiques en appuyant sur les touches [Ctrl]+[V].
C’est maintenant cette nouvelle feuille que nous allons pouvoir enregistrer en tant que fichier PDF :
3. Exporter un graphique en image JPG
Maintenant que nous avons vu comment exporter des objets comme des graphiques dans un fichier PDF, voyons comment générer directement des images à partir de ces derniers.
Pour cela, la procédure est encore plus simple !
Il suffit en effet de cliquer sur une zone vide du graphique avec le bouton droit de la souris pour faire apparaître le menu contextuel, et simplement choisir l'option "Enregistrer en tant qu’image".
Dans la boîte de dialogue "Enregistrer en tant qu’image" qui s’affiche, nous pouvons sélectionner le dossier et le nom à donner à l’image :
Nous pouvons également sélectionner le format de cette image.
Parmi les formats proposés, nous trouvons tout d’abord le PNG qui est un format relativement léger couramment utilisé sur le Web car ce dernier prend en charge la transparence et la compression sans perte.
Ensuite, nous retrouvons le format JPEG qui va nous intéresser ici qui utilise une compression plus forte, avec perte, permettant de réduire la taille du fichier.
Sont également proposés les formats GIF et TIF et BMP qui ne sont pas pertinents ici, ainsi que le SVG qui permet d’enregistrer des images vectorielles, c’est-à-dire stockées sous forme de formules mathématiques, permettant un redimensionnement sans perte de qualité.
Ici, nous sélectionnons le format JPEG et nous cliquons sur le bouton « Enregistrer ».
L’image est ainsi générée.
4. Exporter tous les graphiques d’une feuille en JPG
Maintenant, si nous souhaitons exporter tous les graphiques d'une feuille en tant qu'images JPG dans Excel, nous allons créer une petite macro-commande en utilisant le langage VBA (Visual Basic for Applications).
Le VBA est un langage de programmation intégré dans Excel qui nous permet d'automatiser des tâches et d'interagir avec les fonctionnalités du logiciel.
Pas besoin d'être un expert en programmation pour suivre ce tutoriel, car je vais vous expliquer chaque étape en détail.
Mais si vous souhaitez aller plus loin dans la découverte de ce langage extrêmement puissant, vous pouvez découvrir mon livre dédié à la découverte de VBA pour les grands débutants en suivant ce lien.
La première chose à faire va maintenant consister à ouvrir l'éditeur de code VBA en utilisant le raccourci clavier [Alt]+[F11].
Puis, nous allons insérer un nouveau module dans le projet VBA dans lequel nous pourrons écrire notre code.
Pour insérer un nouveau module, nous nous rendons simplement dans le menu « Insertion » afin de cliquer sur « Module ».
Maintenant, nous pouvons écrire la macro en VBA que nous allons appeler "ExporterGraphiques()" en utilisant le mot-clé "Sub" suivi du nom de la macro.
Sub ExportGraphiques()
Cette ligne indique le début de la macro.
Ensuite, nous allons déclarer deux variables que nous utiliserons dans notre code :
- "graph" de type ChartObject qui va permettre de représenter chaque objet graphique (chart) dans la feuille,
- "i" de type Integer qui va permettre de compter le nombre de graphiques exportés.
Dim graph As ChartObject, i As Integer
Nous allons maintenant pouvoir mettre en place une boucle "For Each" pour parcourir tous les graphiques présents dans la feuille active.
Une boucle "For Each" en programmation permet de parcourir tous les éléments d'une collection ou d'un ensemble de données. Elle exécute une série d'instructions pour chaque élément de la collection, en leur attribuant successivement la valeur de l'élément courant.
Ici, cette boucle va donc permettre de parcourir tous les graphiques présents dans la feuille active. À chaque itération de la boucle, la variable "graph" prendra la valeur de l'objet graphique courant, permettant ainsi de manipuler cet objet spécifique dans les instructions qui suivent.
For Each graph In ActiveSheet.ChartObjects
À l'intérieur de la boucle, nous exportons chaque graphique en tant qu'image JPG en utilisant la méthode "Export" de l'objet Chart associé au graphique « graph ».
Le chemin d'accès et le nom du fichier sont définis en utilisant une combinaison de texte fixe, la valeur de "i" pour le numéro du graphique, et l'extension ".jpg".
Chacun de ces éléments étant accolés l’un à la suite de l’autre en utilisant l’esperluette.
graph.Chart.Export "c:\temp\exportGraphiques\" & "graphique" & i & ".jpg", "JPG"
Après avoir exporté un graphique, nous incrémentons la variable "i" de 1 pour passer au numéro du graphique suivant.
i = i + 1
Bien entendu, vous pouvez modifier le chemin d'accès utilisé dans cette macro par le chemin d'accès complet du dossier dans lequel vous souhaitez enregistrer les images JPG. La seule contrainte étant que ce dossier doit obligatoirement exister.
Maintenant, pour exécuter cette macro, nous revenons sur la feuille de calculs, et nous allons ajouter un bouton à la barre d'outils d'accès rapide Excel en suivant les étapes suivantes :
- Cliquez avec le bouton droit de la souris sur la barre d'outils d'Excel.
- Sélectionnez "Personnaliser la barre d'outils".
- Dans l'onglet "Commandes", choisissez "Macros" dans la liste des catégories.
- Sélectionnez la macro "ExporterGraphiques" dans la liste des macros disponibles.
- Cliquez sur le bouton « Ajouter… »" vers la barre d'outils.
- Cliquez sur "OK" pour fermer la boîte de dialogue.
Maintenant, vous pouvez simplement cliquer sur le bouton dans la barre d'outils pour exécuter la macro et exporter tous les graphiques de la feuille en images JPG.
N'oubliez pas de sauvegarder votre classeur Excel en tant que fichier de type "Classeur Excel avec macros activées" (.xlsm) pour que la macro puisse fonctionner correctement, ou alors effectuez un copier-coller de la macro vers votre classeur des macros personnelles (et dans ce cas, vous devrez ajouter à nouveau le bouton dans la barre d’outils Accès rapide).
Article initialement publié le 20/06/2023, puis modifié le 22/06/2023.