Créer un fichier PDF à partir d’un Google Sheets est une tâche que vous pouvez automatiser rapidement grâce à Google Apps Script. Ce guide vous explique comment convertir vos feuilles de calcul en PDF efficacement, avec un exemple concret et des étapes détaillées.
Pourquoi convertir un Google Sheets en PDF ?
Les fichiers PDF sont idéaux pour partager des données, car ils sont lisibles sur tous les appareils et protégés contre les modifications accidentelles. Si vous avez un tableau de bord ou un rapport dans Google Sheets à partager, un PDF préserve la mise en page et garantit une présentation professionnelle.
Étape 1 : Configuration de Google Apps Script
Pour démarrer, ouvrez votre fichier Google Sheets et accédez à Extensions > Apps Script.
- Donnez un nom à votre projet (par exemple, « Export PDF »)
- Remplacez le contenu par défaut par le script suivant :
function exportToPDF() {
const sheet = SpreadsheetApp.getActiveSpreadsheet()
const sheetId = sheet.getId()
const pdfFolder = DriveApp.getFolderById("<ID_DU_DOSSIER>") // Remplacez par l'ID de votre dossier Drive
const pdfName = "Export_" + sheet.getName() + ".pdf"
const url = "https://docs.google.com/spreadsheets/d/" + sheetId + "/export?format=pdf&size=A4&portrait=true&sheetnames=false&printtitle=false&gridlines=false"
const token = ScriptApp.getOAuthToken();
const response = UrlFetchApp.fetch(url, {
headers: {
Authorization: "Bearer " + token
}
})
const pdfBlob = response.getBlob().setName(pdfName)
pdfFolder.createFile(pdfBlob)
SpreadsheetApp.getUi().alert("PDF exporté avec succès dans le dossier Drive !")
}
function onOpen() {
const ui = SpreadsheetApp.getUi()
ui.createMenu('Export PDF')
.addItem('Exporter la feuille en PDF', 'exportToPDF')
.addToUi()
}
- Enregistrez votre script et accordez les autorisations nécessaires.
Étape 2 : Comprendre le script
1. Récupération de la feuille Sheets active
La fonction SpreadsheetApp.getActiveSpreadsheet()
permet d’accéder au fichier Google Sheets actuellement ouvert. Cela garantit que le script opère toujours sur la feuille active.
2. Paramètres de l’URL
Le lien utilisé dans le script contient plusieurs paramètres pour configurer le rendu du PDF :
format=pdf
: Spécifie que le fichier exporté sera au format PDF.size=A4
: Définit la taille du papier (A4 dans cet exemple).portrait=true
: Oriente le PDF en mode portrait.sheetnames=false
: Masque les noms des feuilles dans le PDF.gridlines=false
: Supprime les lignes de grille pour un rendu plus propre.
Vous pouvez ajuster ces paramètres selon vos besoins, comme changer la taille du papier ou activer les lignes de grille.
3. Gestion du dossier Drive
Le script utilise la fonction DriveApp.getFolderById("<ID_DU_DOSSIER>")
pour sauvegarder le fichier dans un dossier spécifique de Google Drive. Remplacez <ID_DU_DOSSIER>
par l’ID de votre dossier Drive cible. Pour trouver cet ID :
- Ouvrez le dossier Drive souhaité.
- Copiez l’ID dans l’URL (texte après
/folders/
).
4. Authentification et création du fichier PDF
ScriptApp.getOAuthToken()
génère un jeton d’authentification pour accéder à vos fichiers.UrlFetchApp.fetch(url, {...})
télécharge le fichier PDF à partir de l’URL spécifiée. Pour en savoir plus sur UrlFethApp, voici le lien vers la documentation : https://developers.google.com/apps-script/reference/url-fetch/url-fetch-apppdfBlob.setName(pdfName)
nomme le fichier PDF avant de l’ajouter au dossier Drive viapdfFolder.createFile(pdfBlob)
.
5. Menu personnalisé Apps Script
La fonction onOpen()
crée un menu nommé Export PDF dans Google Sheets. Ce menu contient une option intitulée Exporter la feuille en PDF, qui exécute la fonction exportToPDF
lorsqu’elle est sélectionnée.
Étape 3 : Tester le script
- Rechargez votre Google Sheets pour voir le menu Export PDF apparaître.
- Cliquez sur Export PDF > Exporter la feuille en PDF.
- Accédez à votre dossier Google Drive pour vérifier le PDF exporté.
Exemple pratique : Rapport mensuel
Supposons que vous gériez un rapport mensuel pour votre équipe. Voici comment le script fonctionne :
- Vous avez un fichier Google Sheets nommé « Budget mensuel ».
- Lancez le script via le menu Export PDF pour générer automatiquement un PDF intitulé « Export_Budget_Mensuel.pdf ».
- Le PDF est sauvegardé dans un dossier Google Drive prédéfini, prêt à être partagé.
Conclusion
Transformer un Google Sheets en PDF avec Google Apps Script est une solution simple et efficace pour améliorer votre productivité. Que ce soit pour partager des rapports ou archiver des documents, ce script peut être personnalisé selon vos besoins. N’hésitez pas à l’adapter et à expérimenter pour créer des automatisations sur mesure.
Si cet article vous a été utile, partagez le ou laissez un commentaire. Bonne automatisation !
Retrouvez nous sur les réseaux sociaux :