Comment enregistrer une feuille de calcul au format PDF et l’envoyer par e-mail en pièce jointe via Outlook ?
Dans votre travail quotidien, vous devez souvent partager une feuille spécifique avec des collègues ou des clients, tout en souhaitant garantir que le type de fichier reste figé et sécurisé. Envoyer une feuille de calcul au format PDF via Outlook est une exigence courante — notamment pour archiver des rapports, transmettre des factures ou partager des données finalisées qu’il ne faut pas pouvoir modifier facilement. Traditionnellement, cela implique d’enregistrer manuellement la feuille au format PDF, d’ouvrir Outlook, de rédiger un message, d’y joindre le fichier, puis de l’envoyer : une procédure fastidieuse et chronophage, surtout lorsqu’elle est répétée fréquemment ou appliquée à plusieurs feuilles.
Cet article vous guide pas à pas pour automatiser la conversion d’une feuille de calcul en PDF et son envoi immédiat en pièce jointe d’un e-mail Outlook directement depuis Excel, vous faisant ainsi gagner un temps considérable tout en éliminant les tâches manuelles répétitives. Vous y découvrirez une solution basée sur du code VBA, accompagnée d’explications claires sur son fonctionnement, ses avantages, ses scénarios d’application ainsi que des conseils pratiques.
Enregistrer une feuille de calcul au format Fichiers PDF et l’envoyer par e-mail en pièce jointe avec du code VBA
Pour accélérer l’exportation d’une feuille Excel au format PDF et son envoi via Outlook, utilisez le code VBA suivant. Cette solution est idéale si vous envoyez régulièrement des rapports personnalisés, des factures ou d’autres instantanés de données directement depuis Excel, puisqu’elle automatise entièrement les étapes d’enregistrement et d’envoi.
Avant d’appliquer cette méthode, assurez-vous que Microsoft Outlook est installé et configuré comme client de messagerie par défaut. Pour de meilleurs résultats, activez les macros dans votre environnement Excel.
1. Ouvrez la feuille que vous souhaitez enregistrer et envoyer au format PDF. Appuyez simultanément sur Alt + F11 pour ouvrir l’éditeur Microsoft Visual Basic pour Applications (VBA).
2. Dans la fenêtre VBA, cliquez dans le menu sur Insertion > Module. Cela créera un nouveau module de code. Copiez ensuite le code VBA suivant et collez-le dans la fenêtre Code du module.
Code VBA : enregistrer une feuille de calcul au format Fichiers PDF et l’envoyer par e-mail en pièce jointe
Sub Saveaspdfandsend()
Dim xSht As Worksheet
Dim xFileDlg As FileDialog
Dim xFolder As String
Dim xYesorNo As Integer
Dim xOutlookObj As Object
Dim xEmailObj As Object
Dim xUsedRng As Range
Set xSht = ActiveSheet
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
If xFileDlg.Show = True Then
xFolder = xFileDlg.SelectedItems(1)
Else
MsgBox "You must specify a folder to save the PDF into." & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Must Specify Destination Folder"
Exit Sub
End If
xFolder = xFolder + "\" + xSht.Name + ".pdf"
'Check if file already exist
If Len(Dir(xFolder)) > 0 Then
xYesorNo = MsgBox(xFolder & " already exists." & vbCrLf & vbCrLf & "Do you want to overwrite it?", _
vbYesNo + vbQuestion, "File Exists")
On Error Resume Next
If xYesorNo = vbYes Then
Kill xFolder
Else
MsgBox "if you don't overwrite the existing PDF, I can't continue." _
& vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Exiting Macro"
Exit Sub
End If
If Err.Number <> 0 Then
MsgBox "Unable to delete existing file. Please make sure the file is not open or write protected." _
& vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Unable to Delete File"
Exit Sub
End If
End If
Set xUsedRng = xSht.UsedRange
If Application.WorksheetFunction.CountA(xUsedRng.Cells) <> 0 Then
'Save as PDF file
xSht.ExportAsFixedFormat Type:=xlTypePDF, Filename:=xFolder, Quality:=xlQualityStandard
'Create Outlook email
Set xOutlookObj = CreateObject("Outlook.Application")
Set xEmailObj = xOutlookObj.CreateItem(0)
With xEmailObj
.Display
.To = ""
.CC = ""
.Subject = xSht.Name + ".pdf"
.Attachments.Add xFolder
If DisplayEmail = False Then
'.Send
End If
End With
Else
MsgBox "The active worksheet cannot be blank"
Exit Sub
End If
End Sub 3. Après avoir collé le code, appuyez sur F5 ou cliquez sur Exécuter dans l’éditeur VBA pour lancer la macro. Une boîte de dialogue de sélection de dossier s’affiche alors. Choisissez le dossier cible où les fichiers PDF doivent être enregistrés, puis cliquez sur OK pour continuer.

Remarques et conseils pratiques:

4. Une fois le processus terminé, une nouvelle fenêtre de messagerie Outlook s’ouvre automatiquement, avec le fichier PDF en pièce jointe. L’objet du message est prérempli avec le nom de la feuille suivi de « .pdf » ; vous pouvez personnaliser le contenu de l’e-mail, ajouter des destinataires et envoyer le message selon vos besoins. Cette méthode réduit les erreurs et améliore l’efficacité par rapport à la procédure manuelle.

Cette approche fondée sur VBA s’avère particulièrement efficace lorsque vous devez régulièrement transmettre des feuilles finalisées en pièces jointes PDF, car elle réduit au minimum les étapes manuelles répétitives. Ses limites résident dans sa dépendance à Outlook, son incapacité à traiter plusieurs feuilles simultanément et l’obligation d’activer les macros. Pour des flux de travail plus complexes — comme l’envoi simultané de plusieurs feuilles ou une automatisation renforcée —, privilégiez les compléments Excel ou les fonctionnalités intégrées.
Solution alternative : si les macros VBA ne conviennent pas à votre environnement — par exemple en raison de restrictions —, vous pouvez utiliser manuellement la fonction intégrée d’Excel Exporter ou Enregistrer sous pour sauvegarder votre feuille au format PDF, puis la joindre et l’envoyer via Outlook. Bien que cette méthode implique davantage d’étapes, elle est universellement disponible, sans autorisations spéciales ni connaissances en programmation.
Enregistrez facilement une feuille de calcul ou plusieurs feuilles de calcul sous forme de fichiers Fichiers PDF distincts en une seule opération :
L’outil Séparer le classeur de Kutools pour Excel vous permet d’enregistrer facilement une ou plusieurs feuilles de calcul sous forme de fichiers PDF distincts, simultanément, comme illustré dans la démonstration ci-dessous. Téléchargez-le et essayez-le dès maintenant ! (Essai gratuit de 30 jours)

Articles associés :
- Comment enregistrer un fichier Excel avec un horodatage ?
- Comment utiliser la fonction « Enregistrer sous » pour remplacer automatiquement un fichier existant dans Excel ?
- Comment enregistrer ou exporter plusieurs, voire toutes les feuilles, vers des fichiers CSV ou texte distincts dans Excel ?
- Comment désactiver ou interdire les options « Enregistrer » et « Enregistrer sous » dans Excel ?
- Comment désactiver la commande « Enregistrer » du classeur tout en n’autorisant que « Enregistrer sous » dans Excel ?
Meilleurs outils de productivité Office
Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile
- Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !
Tous les compléments Kutools. Un seul installateur
Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.
- Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
- Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
- Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
- Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
- Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels