Google Apps Script : L’outil GRATUIT d’automatisation d’entreprise que votre entreprise ignore à tort.

Table of contents
  1. Qu'est-ce que Google Apps Script ?
    1. À quoi ressemble le code Apps Script ?
  2. Avantages de l'utilisation de Google Apps Script
  3. Planifiez vos scripts pour déclencher des automatisations
  4. Google Apps Script vs. Plateformes d'automatisation No-Code populaires : Une perspective différente
  5. Démarrer avec Google Apps Script
    1. Scripts liés
    2. Scripts autonomes
  6. Conclusion : Libérez la puissance de Google Apps Script
Attila

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.

Qu’est-ce que Google Apps Script ?

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.

À quoi ressemble le code Apps Script ?

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!');
}
Création d’un script Apps Script lié à une feuille de calcul

Avantages de l’utilisation de Google 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 :

  • Gagnez du temps et de l’effort : Il automatise les tâches répétitives que vous effectuez souvent, comme le déplacement de données ou l’envoi d’e-mails similaires. Cela vous libère pour vous concentrer sur un travail plus important.
  • C’est gratuit : Si vous avez un compte Google, vous avez déjà accès à Google Apps Script sans frais supplémentaires.
  • Fiable : C’est un service Google, il est donc généralement très fiable et fonctionne de manière constante, tout comme les autres applications Google.
  • Intégration transparente avec Google Workspace : Si votre entreprise utilise Google Workspace, Apps Script s’intègre parfaitement à votre configuration existante (Sheets, Docs, Gmail, etc.). Vous n’avez pas besoin de plateformes externes pour connecter vos applications Google. Il fonctionne également bien avec les méthodes de gestion des accès de Google.
  • Se connecte au-delà de Google Workspace : Apps Script n’est pas seulement pour les applications Google ! Vous pouvez l’utiliser pour connecter votre environnement Google Workspace à de nombreux autres services tiers populaires en utilisant leurs API. Cela vous permet d’extraire des données dans Sheets à partir d’un outil de gestion de projet comme ClickUp ou Asana, d’ajouter de nouveaux contacts d’un Google Form à Mailchimp ou à des systèmes CRM comme HubSpot, d’envoyer des notifications à Slack ou Twilio, ou de travailler avec des données de plateformes comme Stripe ou Shopify. Il intègre efficacement les outils externes à votre flux de travail Google familier.
  • Coût de développement faible : Il utilise JavaScript, un langage courant. Cela signifie qu’il est souvent plus facile et moins coûteux de trouver quelqu’un pour aider à créer des scripts que d’embaucher pour d’autres systèmes complexes.
  • Améliore la précision : Les scripts suivent les instructions à la lettre, réduisant les erreurs humaines qui peuvent survenir lors d’un travail manuel et répétitif.
  • Augmente la productivité : En automatisant les petites tâches, vous et votre équipe pouvez consacrer plus de temps à un travail significatif, rendant tout le monde plus productif.
  • Automatisation rentable : Vous bénéficiez de fonctionnalités d’automatisation puissantes sans le coût élevé de nombreux outils d’automatisation spécialisés ou l’embauche d’équipes de développement complètes.

Planifiez vos scripts pour déclencher des automatisations

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 :

  • Déclencheurs liés aux documents ou au contenu (Déclencheurs simples) : Ce sont des déclencheurs faciles, intégrés, directement liés aux interactions de base avec les fichiers Google Workspace comme Docs, Sheets et Forms. Ils s’exécutent automatiquement lorsque quelqu’un ouvre ou modifie le fichier, ou même change sa sélection dans une feuille. Ils sont excellents pour les tâches simples directement liées au contenu ou aux actions de base d’un utilisateur au sein d’un document.
    • Ouverture d’un fichier : S’exécute lorsqu’un document, une feuille ou un formulaire est ouvert pour modification.
    • Modification de contenu : S’exécute lorsqu’une valeur de cellule est modifiée dans une feuille de calcul.
    • Changement de sélection : S’exécute lorsque la ou les cellules sélectionnées changent dans une feuille de calcul.
    • Installation d’un module complémentaire : S’exécute lorsque quelqu’un installe votre script en tant que module complémentaire.
  • Déclencheurs liés aux processus (Déclencheurs installables) : Ce sont des déclencheurs plus puissants et flexibles que vous configurez vous-même. Ils ne sont pas limités aux interactions simples avec les documents et peuvent lancer des scripts basés sur un éventail plus large d’événements ou sur un planning. Ils peuvent également effectuer des tâches qui nécessitent votre autorisation, comme l’envoi d’e-mails ou l’interaction avec des services externes.
    • Basé sur un planning :
      • Exécution à une heure et une date spécifiques.
      • Exécution répétée à des intervalles définis (comme toutes les heures, tous les jours, ou même toutes les quelques minutes).
    • Basé sur des événements :
      • Ouverture d’un fichier (une version plus puissante que le déclencheur simple).
      • Modification de contenu (une version plus puissante que le déclencheur simple).
      • Modifications de la structure du document (comme l’ajout ou la suppression de lignes/colonnes dans une feuille).
      • Soumission d’un formulaire.
      • Mises à jour de vos événements Google Agenda (créés, mis à jour ou supprimés).
  • Déclenchés par des services externes (Webhooks) : Votre script peut être configuré avec une adresse web unique que des services externes peuvent appeler pour déclencher l’exécution du script. C’est comme établir une ligne directe pour que d’autres outils en ligne indiquent à votre script de s’exécuter, permettant des intégrations et des flux de travail automatisés entre différents services.

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.

Google Apps Script vs. Plateformes d’automatisation No-Code populaires : Une perspective différente

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 :

  • Intégration plus profonde avec Google Workspace : Apps Script est intégré directement à Google Workspace, permettant une interaction inégalée avec Google Sheets, Docs, Gmail, Calendar et d’autres services à un niveau granulaire.
  • Gratuité : Si vous avez un compte Google gratuit, Google Apps Script est entièrement gratuit à utiliser, contrairement à de nombreuses plateformes sans code qui nécessitent des abonnements payants pour une utilisation significative ou des fonctionnalités avancées.
  • Flexibilité et personnalisation : Alors que les outils sans code s’appuient sur des connecteurs pré-construits et des limitations d’action, Apps Script vous permet d’écrire une logique personnalisée pour presque tous les scénarios et d’interagir avec les API exactement comme nécessaire, offrant une flexibilité bien plus grande.
  • Déclencheurs puissants intégrés aux documents : Comme discuté précédemment, Apps Script offre des options de déclenchement uniques directement liées aux interactions des utilisateurs au sein des documents Google (comme les modifications ou les sélections), qui ne sont souvent pas disponibles ou sont moins bien intégrées dans les plateformes sans code externes.

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.

Démarrer avec Google Apps Script

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.

Scripts liés

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]
  });

}
Création d’une automatisation Apps Script liée

Scripts autonomes

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.

Conclusion : Libérez la puissance de Google Apps Script

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 !

Attila

Business process automation expert

Leave a comment

Votre adresse e-mail ne sera pas publiée.

bestflow.

1118 Budapest, Ménesi út 24. Hungary

© 2024 bestflow. All rights reserved.