Business process automation expert
Dans le monde des affaires, l’efficacité est primordiale, et l’automatisation est le moteur qui la propulse. Alors que de nombreuses entreprises investissent massivement dans des solutions logicielles complexes, l’un des outils d’automatisation les plus puissants et accessibles est probablement déjà à votre portée, mais souvent négligé : Google Apps Script.
Cette plateforme de script gratuite, basée sur le cloud et intégrée de manière transparente à Google Workspace, recèle un énorme potentiel pour rationaliser vos flux de travail, connecter vos applications Google préférées et créer des solutions personnalisées sans nécessiter une vaste expérience en développement.
Dans cet article, nous allons lever le voile sur Google Apps Script, en explorant ce que c’est exactement, son objectif principal et ses avantages impressionnants, et comment il se compare aux alternatives populaires sans code.
C’est un outil de Google qui vous permet d’écrire du code pour que vos applications Google fassent plus de travail pour vous automatiquement. C’est comme un langage spécial pour dire à Google Sheets, Docs et d’autres applications ce qu’elles doivent faire.
Cet outil fonctionne en ligne, dans le cloud, et son objectif principal est de vous aider à automatiser les tâches répétitives et à en faire plus sans effort supplémentaire.
Google Apps Script existe depuis un certain temps – depuis 2009, en fait. C’est donc un service éprouvé que de nombreuses personnes utilisent depuis des années pour améliorer leur travail.
L’une de ses plus grandes qualités est sa parfaite intégration avec les outils Google que vous utilisez déjà. Il se connecte directement à des applications comme Google Sheets, Google Docs, Google Forms, Gmail, Calendar, et bien d’autres. Cette connexion vous permet de créer des liens personnalisés entre elles. Par exemple, vous pouvez faire en sorte que de nouvelles réponses de formulaire mettent automatiquement à jour une feuille de calcul ou envoient un e-mail personnalisé. Vous pouvez même connecter des applications Google à d’autres services en ligne non Google en utilisant ce qu’on appelle des API.
Avec Google Apps Script, vous n’êtes pas limité aux tâches simples. Vous pouvez créer des éléments plus avancés comme des pages web qui exécutent votre code (appelées applications web), créer de petits morceaux de code que d’autres programmes peuvent utiliser (comme des API exécutables pour des outils tiers), ou même créer des modules complémentaires que d’autres peuvent installer dans leurs applications Google Workspace.
Cela rend Google Apps Script super flexible et utile pour créer des solutions personnalisées qui résolvent vos problèmes uniques ou automatisent des étapes spécifiques de votre flux de travail professionnel.
Il est également utile de mentionner AppSheet ici. AppSheet est un autre outil de Google, mais c’est une plateforme sans code pour créer des applications sans écrire beaucoup (ou pas du tout) de code. Lorsque vous utilisez Google Apps Script et AppSheet ensemble, vous pouvez créer des applications personnalisées encore plus puissantes et complètes pour véritablement rationaliser et automatiser vos processus métier.
Cette puissance et cette flexibilité, disponibles gratuitement au sein de Google Workspace, expliquent pourquoi Google Apps Script est un outil si précieux, même s’il n’est pas toujours sous les feux de la rampe.
L’exemple de code simple suivant montre comment écrire « Hello, Apps Script! » dans la cellule supérieure gauche d’une feuille de calcul.
function sayHello() {
// Get the active spreadsheet that the script is attached to
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
// Get the first sheet in the spreadsheet (Sheets are indexed starting from 0)
var sheet = spreadsheet.getSheets()[0];
// Get the cell range where we want to put the text (A1 in this case)
var cell = sheet.getRange('A1');
// Set the value of the cell to "Hello, Apps Script!"
cell.setValue('Hello, Apps Script!');
}
Voyons pourquoi c’est un outil si précieux pour votre travail ou votre entreprise.
Voici quelques-uns des grands avantages de l’utilisation de Google Apps Script :
L’une des fonctionnalités les plus puissantes de Google Apps Script est la capacité d’exécuter vos scripts automatiquement sans que vous ayez besoin de cliquer sur un bouton. Ces automatisations sont configurées à l’aide de « déclencheurs ». Considérez les déclencheurs comme les événements ou les plannings qui indiquent à votre script quand se « réveiller » et effectuer une tâche. Cela vous permet de créer des flux de travail qui se déroulent entièrement d’eux-mêmes, vous épargnant ainsi des efforts manuels.
Les déclencheurs Google Apps Script peuvent être envisagés de deux manières principales :
En utilisant les déclencheurs liés aux processus, vous pouvez automatiser des flux de travail plus complexes, connecter différentes applications Google Workspace, et même intégrer des services extérieurs à Google, le tout s’exécutant automatiquement en fonction de vos déclencheurs définis ou d’appels externes.
Lorsque vous explorez les options d’automatisation, vous avez probablement rencontré des services étiquetés « sans code ». Des plateformes comme Zapier, Make (anciennement Integromat), N8N ou Microsoft Power Automate sont des exemples populaires, promettant de permettre à quiconque de créer des flux de travail d’automatisation complexes à l’aide d’interfaces visuelles, d’éléments glisser-déposer et de connecteurs pré-construits sans écrire de code. Bien que ces outils soient puissants et aient leur place, l’étiquette « sans code » peut souvent être trompeuse et créer une fausse impression d’accessibilité universelle.
Voici la réalité : ces plateformes « sans code » sont, à la base, des interfaces de programmation visuelle. Elles masquent le code, mais elles exigent toujours des utilisateurs qu’ils comprennent les concepts fondamentaux de la programmation et des données pour être utilisées efficacement. Si vous ne savez pas ce qu’est une API
et comment les services communiquent via des requêtes (comme GET
ou POST
), ce qu’est une charge utile
, comment utiliser la logique booléenne (conditions vrai/faux
), ou comment fonctionnent les types de données, vous aurez du mal à configurer des flux complexes, à déboguer des problèmes ou à comprendre pourquoi une intégration ne se comporte pas comme prévu.
La configuration de connexions même apparemment simples implique souvent le mappage de champs de données, la compréhension des formats de données (comme JSON
) et la configuration de déclencheurs et d’actions basés sur les capacités sous-jacentes des API – tous des concepts enracinés dans la programmation.
C’est là que l’aspect « trompeur » intervient. L’interface visuelle suggère la simplicité, mais l’obstacle conceptuel reste important pour quelqu’un n’ayant absolument aucune formation technique. Cela donne la fausse impression que n’importe qui peut instantanément devenir un expert en automatisation simplement en s’inscrivant.
Google Apps Script, en revanche, se présente clairement comme une solution de script ou « low-code ». Bien qu’il nécessite d’écrire du code (JavaScript), cette transparence fixe des attentes réalistes dès le départ. Vous savez que vous apprenez un langage de programmation, ce qui fournit une base solide pour comprendre comment l’automatisation et les intégrations fonctionnent réellement.
De plus, à l’ère de l’IA avancée, apprendre et utiliser Google Apps Script est devenu significativement plus accessible que de naviguer dans les complexités souvent cachées sous la couche visuelle des outils sans code. Bien que l’IA puisse aider à configurer certains aspects des plateformes sans code, des outils comme Gemini excellent à fournir des exemples de scripts détaillés et de haute qualité, à expliquer le code ligne par ligne, et à aider les utilisateurs à comprendre la logique sous-jacente en JavaScript. Ce niveau d’assistance détaillée et contextuelle pour l’écriture et le débogage de code n’est généralement pas disponible ou aussi efficace lorsque l’on tente de comprendre les configurations complexes et les structures de données cachées au sein de flux de travail sans code complexes.
Nous pensons qu’avec l’aide d’une IA puissante, commencer par Google Apps Script et apprendre les concepts fondamentaux du codage peut en fait être une voie plus recommandée et finalement plus facile pour créer des automatisations robustes et personnalisées que de se débattre avec les prérequis techniques déguisés par une interface « sans code ».
Au-delà de la courbe d’apprentissage et de l’assistance de l’IA, Google Apps Script offre plusieurs avantages distincts par rapport à de nombreux systèmes sans code populaires :
En résumé, bien que les plateformes sans code servent un objectif précieux pour les utilisateurs ayant une certaine intuition technique ou des besoins spécifiques et simples, elles peuvent être un point de départ frustrant pour les débutants complets en raison des concepts techniques cachés. Google Apps Script est un outil puissant qui ne devrait pas être écarté au profit de solutions qui n’apparaissent plus simples qu’en surface.
Prêt à vous lancer dans le monde de Google Apps Script ? Il est facile de commencer à expérimenter, et Google propose deux façons principales de créer et d’exécuter vos scripts : les scripts liés et les scripts autonomes.
Les scripts liés sont directement attachés à un fichier Google spécifique – une feuille, un document, un formulaire ou une présentation. Ils sont parfaits pour automatiser des tâches qui ne sont pertinentes que pour ce fichier particulier, comme l’ajout de menus personnalisés, la réponse aux modifications dans une feuille de calcul ou le traitement des soumissions de formulaires. La caractéristique clé des scripts liés est leur capacité à utiliser des déclencheurs simples, comme onOpen
, onEdit
, onInstall
et onFormSubmit
. Ces fonctions s’exécutent automatiquement lorsqu’un événement spécifique se produit dans le fichier lié, sans que vous ayez besoin de déclencher manuellement le script.
Vous pouvez facilement accéder à l’éditeur de script pour un script lié directement depuis le fichier avec lequel vous souhaitez travailler. Par exemple, dans Google Sheets, il suffit d’aller dans le menu et de cliquer sur Extensions > Apps Script. Cela ouvrira un nouvel onglet de navigateur avec l’éditeur de script, déjà lié à votre feuille de calcul.
/**
* This Google Apps Script is designed to be bounded to a Google Sheet.
* It monitors changes in Column B. When a cell in Column B is set to "Confirmed",
* cell in Column A, and then sends this document as a PDF attachment to a specified email address.
* The email subject will also be the title from Column A.
*/
// --- Configuration Variables ---
/**
* The email address to which the generated Google Document will be sent.
*/
const TARGET_EMAIL = 'your-target-email@gmail.com'; // <<< IMPORTANT: Update this email address!
/**
* The folder ID where the new Google Documents will be created.
*/
const TARGET_FOLDER_ID = 'YOUR-TARGET-FOLDER-ID'; // Optional: Set a specific Google Drive Folder ID. Leave empty for root.
/**
* The value in the status column that triggers document creation and email sending.
* @type {string}
*/
const CONFIRM_STATUS_VALUE = 'Confirmed';
// --- Main Function Triggered on Sheet Edit ---
/**
* This function is automatically triggered when a user edits a cell in the bounded spreadsheet.
* It checks if the edited cell is in Column B and if its value is 'Confirmed'.
* If conditions are met, it creates a Google Doc and sends it as an email attachment.
*
* @param {GoogleAppsScript.Events.SheetsOnEdit} e The event object containing information about the edit.
*/
function onEditTrigger(e) {
try {
const range = e.range;
const sheet = range.getSheet();
const editedColumn = range.getColumn();
const editedRow = range.getRow();
const newValue = e.value; // The new value of the edited cell
// Column A (index 1) for title
const TITLE_COLUMN_INDEX = 1;
// Column B (index 2) for status dropdown
const STATUS_COLUMN_INDEX = 2;
// Check if the edited column is the status column (Column B) and the new value is 'Confirmed'
if (editedColumn === STATUS_COLUMN_INDEX && newValue === CONFIRM_STATUS_VALUE) {
// Get the title from the corresponding row in the title column (Column A)
const documentTitleRange = sheet.getRange(editedRow, TITLE_COLUMN_INDEX);
const documentTitle = documentTitleRange.getValue();
// Create the Google Document
const doc = createGoogleDocument(documentTitle);
const docId = doc.getId();
// Get the Google Doc file directly for attachment
const googleDocFile = DriveApp.getFileById(docId);
// Send the email with the Google Doc file as an attachment
sendDocumentEmail(documentTitle, googleDocFile);
// Optional: Add a note to the sheet indicating the document was processed
const statusNoteCell = sheet.getRange(editedRow, editedColumn + 1);
statusNoteCell.setValue('Document sent!');
}
} catch (error) {
Logger.log(`An error occurred in onEdit: ${error.message}. Stack: ${error.stack}`);
}
}
// --- Helper Functions ---
/**
* Creates a new Google Document with the specified title and optional content.
*
* @param {string} title The title for the new Google Document.
* @returns {GoogleAppsScript.Drive.File} The newly created Google Document file.
*/
function createGoogleDocument(title) {
// Create a new document with the given title
const newDoc = DocumentApp.create(title);
const body = newDoc.getBody();
// Add some default content to the document (optional)
body.appendParagraph(`This document was automatically generated from your Google Sheet.`);
body.appendParagraph(`Title: ${title}`);
// Save and close the document to ensure content is written
newDoc.saveAndClose();
// Get the file object from DriveApp
const file = DriveApp.getFileById(newDoc.getId());
// Move the file to the target folder if TARGET_FOLDER_ID is specified
if (TARGET_FOLDER_ID) {
try {
const folder = DriveApp.getFolderById(TARGET_FOLDER_ID);
file.moveTo(folder);
console.log(`Moved document "${title}" to folder ID: ${TARGET_FOLDER_ID}`);
} catch (folderError) {
console.warn(`Could not move document to folder ID ${TARGET_FOLDER_ID}: ${folderError.message}. Document remains in root.`);
}
}
return file;
}
/**
* Sends an email with the specified subject and attaches the provided PDF blob.
*
* @param {string} subject The subject of the email.
* @param {GoogleAppsScript.Base.Blob} attachmentBlob The PDF blob to attach to the email.
*/
function sendDocumentEmail(subject, attachmentBlob) {
const emailBody = `Dear recipient,
A new document titled "${subject}" has been generated and is attached.
Best regards,
Your Google Sheet Automation`;
MailApp.sendEmail({
to: TARGET_EMAIL,
subject: subject,
body: emailBody,
attachments: [attachmentBlob]
});
}
Les scripts autonomes ne sont attachés à aucun document Google spécifique. Ils résident dans votre Google Drive et sont idéaux pour les tâches qui ne sont pas liées à un seul fichier, comme l’automatisation de processus sur plusieurs documents, la création d’applications web, ou la configuration de tâches basées sur le temps (comme l’envoi de rapports planifiés) et l’interaction avec d’autres services comme Gmail ou Calendar.
Vous pouvez créer un script autonome en allant dans Google Drive, en cliquant sur + Nouveau > Plus > Google Apps Script. Cela ouvre également l’éditeur de script dans un nouvel onglet, mais ce projet n’est lié à aucun document par défaut.
/**
* Creates a Google Doc and sends an email to the current user with a link to the doc.
*/
const FOLDER_ID = 'YOUR_FOLDER_ID'; // REplace it with your Drive folder ID
function createAndSendDocument() {
try {
// Create a new Google Doc named 'Hello, world!'
const doc = DocumentApp.create('Hello, world!');
// Access the body of the document, then add a paragraph.
doc.getBody().appendParagraph('This document was created by Google Apps Script.');
// Get the URL of the document.
const url = doc.getUrl();
// Get the ID of the newly created document.
const docId = doc.getId();
// Get the file object of the document from its ID.
const file = DriveApp.getFileById(docId);
// Get the target folder by its ID.
const folder = DriveApp.getFolderById(FOLDER_ID);
// Add the file to the specified folder.
// This also implicitly removes it from the user's My Drive root folder if it was created there.
file.moveTo(folder);
// Get the email address of the active user - that's you.
const email = Session.getActiveUser().getEmail();
// Get the name of the document to use as an email subject line.
const subject = doc.getName();
// Append a new string to the "url" variable to use as an email body.
const body = 'Link to your doc: ' + url;
// Send yourself an email with a link to the document.
GmailApp.sendEmail(email, subject, body);
} catch (err) {
Logger.log('Failed with error %s', err.message);
}
}
Ces exemples simples devraient vous prendre moins de deux minutes à configurer et à exécuter, vous donnant une idée de la facilité avec laquelle il est possible de commencer à automatiser avec Google Apps Script !
Pour véritablement libérer toute la puissance et explorer les vastes capacités de Google Apps Script, votre prochaine étape essentielle devrait être la documentation officielle de Google Apps Script. C’est votre source principale et faisant autorité pour apprendre tout, des bases aux sujets avancés.
Le site officiel fournit des guides complets sur les concepts fondamentaux, des documents de référence détaillés pour tous les services Google intégrés (comme SpreadsheetApp
, DocumentApp
, GmailApp
, et bien d’autres), des tutoriels pour les tâches courantes et des informations sur les meilleures pratiques.
Google Apps Script est un outil puissant et gratuit, souvent négligé, qui libère un potentiel d’automatisation considérable au sein de l’écosystème Google Workspace et au-delà. En comprenant ses capacités et la distinction claire qu’il offre par rapport à la simplicité souvent trompeuse des solutions « sans code », vous pouvez commencer à créer des flux de travail personnalisés adaptés à vos besoins spécifiques. De la rationalisation des tâches répétitives à la création d’intégrations sophistiquées avec des services externes, Apps Script offre un moyen flexible et rentable d’augmenter la productivité.
Prêt à plonger plus profondément et à voir Google Apps Script en action ? N’oubliez pas de consulter nos autres articles de blog où nous proposons des tutoriels d’automatisation pratiques et explorons des cas d’utilisation plus avancés pour vous aider à poursuivre votre parcours d’automatisation !
Business process automation expert
1118 Budapest, Ménesi út 24. Hungary
© 2024 bestflow. All rights reserved.