Obtenir de l'aide

Centre d'aide

Guides et réponses

Contacter le support

Écrire à notre équipe

Se connecter à

Workflows

Créer des processus avec votre équipe

Automations

Connecter des fichiers et automatiser des tâches

Un système, quatre parties

Agents IA

Des employés virtuels qui travaillent 24 h/24, 7 j/7

Automations

Connecter des fichiers et automatiser des tâches

Workflows

Créer des processus avec votre équipe

Data Space

Partage et contrôle des données en toute confiance

Solutions par service

Finance

Rapports, budgets et rapprochements

Inventaire et fabrication

Stocks, commandes et production en une seule vue

RH

Feuilles de temps, présences et évaluations

Gestion de projet

Statut et charge de travail de tous les projets

Ventes et CRM

Prospects et affaires à jour

Éducation

Dossiers des élèves et données scolaires

Finance

Transformez le travail financier manuel en rapports qui se mettent à jour tout seuls.

Ce que les équipes Finance automatisent

  • Suivre les dettes et créances
  • Créer des tableaux de flux de trésorerie
  • Comparer budget et réel

Inventaire et fabrication

Visualisez vos niveaux de stock et automatisez vos commandes.

Ce que les équipes inventaire et fabrication automatisent

  • Suivre l'inventaire sur plusieurs sites
  • Connecter les données de ventes, d'achats et d'entrepôt
  • Relier un lecteur de codes-barres à votre feuille

RH

Gérez le recrutement, les présences et le suivi des OKR depuis vos feuilles.

Ce que les équipes RH automatisent

  • Suivre le recrutement et l'intégration
  • Enregistrer les OKR et résultats de l'équipe
  • Suivre les arrivées, départs et congés

Gestion de projet

Attribuez des tâches et suivez les heures sans mise à jour manuelle.

Ce que les équipes projet automatisent

  • Attribuer des tâches et suivre les changements de statut
  • Estimer l'effort et saisir les heures travaillées
  • Suivre les jalons de tous les projets

Ventes et CRM

Suivez les prospects et les performances commerciales avec des rapports automatisés.

Ce que les équipes commerciales automatisent

  • Suivre et convertir les prospects
  • Fixer des objectifs de vente et suivre les indicateurs de l'équipe
  • Surveiller les KPI de vente sur des tableaux de bord

Éducation

Automatisez les présences, les notes et les achats de l'école.

Ce que les écoles automatisent

  • Suivre les présences et prévenir les parents
  • Enregistrer et comparer les notes des classes
  • Suivre le matériel prêté aux élèves et au personnel

Trouver un cas d'utilisation

Par service

Comment chaque équipe utilise Sheetgo

Par secteur d'activité

Comment chaque secteur utilise Sheetgo

Par taille d'entreprise

Petite, moyenne ou grande

Apprendre

Blog

Guides et nouveautés produit

Témoignages de clients

Comment des équipes comme la vôtre utilisent Sheetgo

Centre d'aide

Guides et réponses

Pourquoi Sheetgo ?

Comparer

Comment Sheetgo se compare aux autres outils

Sécurité

Comment nous protégeons vos données

Centre de confiance

Le détail de notre conformité

Se connecter à

Workflows

Créer des processus avec votre équipe

Automations

Connecter des fichiers et automatiser des tâches

Un système, quatre parties

Agents IA

Des employés virtuels qui travaillent 24 h/24, 7 j/7

Automations

Connecter des fichiers et automatiser des tâches

Workflows

Créer des processus avec votre équipe

Data Space

Partage et contrôle des données en toute confiance

Solutions par service

Finance

Rapports, budgets et rapprochements

Inventaire et fabrication

Stocks, commandes et production en une seule vue

RH

Feuilles de temps, présences et évaluations

Gestion de projet

Statut et charge de travail de tous les projets

Ventes et CRM

Prospects et affaires à jour

Éducation

Dossiers des élèves et données scolaires

Trouver un cas d'utilisation

Par service

Comment chaque équipe utilise Sheetgo

Par secteur d'activité

Comment chaque secteur utilise Sheetgo

Par taille d'entreprise

Petite, moyenne ou grande

Commencer

Modèles

Flux de travail prêts à l'emploi

Apprendre

Blog

Guides et nouveautés produit

Témoignages de clients

Comment des équipes comme la vôtre utilisent Sheetgo

Centre d'aide

Guides et réponses

Pourquoi Sheetgo ?

Comparer

Comment Sheetgo se compare aux autres outils

Sécurité

Comment nous protégeons vos données

Centre de confiance

Le détail de notre conformité

Centre d'aide

Guides et réponses

Contacter le support

Écrire à notre équipe

Workflows

Créer des processus avec votre équipe

Automations

Connecter des fichiers et automatiser des tâches

Comment utiliser Google Apps Script dans Google Sheets ? [2026 tutoriel pour les débutants]

Cet article vous apprendra à utiliser Google Apps Script dans Google Sheets. Nous partagerons des exemples de scripts et la façon dont ils affectent les feuilles de calcul. Nous expliquerons également certains concepts clés tels que les fonctions personnalisées et les types de données.

Entrons dans le vif du sujet !

Principaux enseignements :

  • Dans Google Sheets, Apps Script peut être utilisé pour automatiser la saisie de données, générer des rapports, nettoyer et formater des données, entre autres.
  • Pour utiliser Google Apps Script dans Google Sheets, rendez-vous à l'adresse suivante Extension > Apps Script et tapez ou collez votre code.
  • Les concepts clés d'Apps Script comprennent les fonctions personnalisées, les déclencheurs, les propriétés et les méthodes, les services Apps Script, la gestion des erreurs et les bibliothèques.

Qu'est-ce que Google Apps Script ?

Google Apps Script est une plateforme basée sur le cloud qui vous permet de créer vos propres programmes pour travailler avec vos applications Google (comme Gmail, Docs et Sheets). Ces programmes exécutent des tâches automatiquement. Ils peuvent envoyer des courriels ou organiser des données. Ils peuvent également ajouter de nouvelles fonctionnalités à vos applications, comme des menus ou des boutons personnalisés.

Google Apps Script utilise un langage de programmation simple appelé JavaScript. Il n'est pas nécessaire d'être un expert en codage pour l'écrire.

En termes simples, voici comment fonctionnent les scripts Google Apps :

  1. Vous écrivez des instructions simples (code) dans l'éditeur Apps Script.
  2. Les serveurs de Google lisent vos instructions et effectuent les tâches que vous souhaitez.
  3. Les résultats apparaissent dans vos applications Google. Il peut s'agir de nouveaux menus, de tâches automatisées ou d'applications personnalisées.

Comment utiliser Apps Script dans Google Sheets ?

Apps Script Google Sheets — éditeur avec un nouveau projet sans titre et une fonction myFunction vide dans Code.gs

Comment utiliser Google Apps Script dans Google Sheets ?

  1. Ouvrez votre feuille Google.
  2. Cliquez sur “Extensions“dans la barre de menu et sélectionnez “Apps Script”. Cela ouvrira un nouvel onglet avec l'éditeur Apps Script.
Apps Script Google Sheets — menu Extensions ouvert avec Apps Script en surbrillance dans une feuille de calcul vide

3. Vous verrez Code.gs. Il s'agit du fichier principal dans lequel vous écrirez votre code JavaScript. Il se trouve dans le menu “Editor”.

Google Apps Script dans Google Sheets — fichier Code.gs en surbrillance dans l'éditeur avec une fonction vide

4. Tapez ou collez votre code. Il se peut que vous ayez besoin d'apprendre le Javascript pour savoir comment écrire du code, ou que vous ayez besoin de savoir comment écrire du code. peut générer du code avec Gemini ou ChatGPT. Mais voici le script que nous utiliserons pour ce tutoriel :

function sendEmails() {
const sheet = SpreadsheetApp.getActiveSheet();
const data = sheet.getDataRange().getValues(); // Récupérer toutes les données
const headers = data.shift(); // Retirer et conserver les en-têtes
for (let i = 1; i < data.length; i++) {
const row = data[i];
const emailAddress = row[headers.indexOf("Email")]; // Récupérer l'e-mail depuis la colonne
const subject = "Automated Email"; // Personnaliser l'objet
const message = `Hello ${row[headers.indexOf("Name")]}, this is an automated email from Google Sheets.`; // Personnaliser le message
if (emailAddress) { // Vérifier que l'e-mail existe
MailApp.sendEmail({
to: emailAddress,
subject: subject,
body: message
});
}
}
}
Google Apps Script dans Google Sheets — fonction sendEmails collée dans Code.gs qui envoie un e-mail pour chaque ligne

Quel est le scénario derrière ce script ? Supposons que nous ayons une liste de contacts dans une feuille Google et que nous souhaitions l'utiliser pour une campagne d'e-mailing de base. Le script récupérera toutes les données nécessaires, telles que l'adresse électronique et le nom, pour composer et envoyer des courriels.

Apps Script Google Sheets — feuille Email Campaign avec les colonnes Email, Name et Other Data

5. Cliquez sur le bouton “Enregistrer”pour enregistrer le script.

Apps Script Google Sheets — icône d'enregistrement du projet en surbrillance au-dessus du code sendEmails

6. Dans le coin supérieur gauche, renommez votre projet et cliquez sur “Exécuter.” Le script enverra des courriels à toutes les adresses de votre feuille.

Apps Script Google Sheets — projet renommé Email Campaign avec le bouton Exécuter en surbrillance

7. Les scripts Apps Script nécessitent une autorisation pour accéder à vos données Google Sheets. Vous serez invité à accorder ces autorisations lorsque vous exécuterez un script.

Autorisations Apps Script — boîte de dialogue Autorisation requise avec le bouton Examiner les autorisations

8. Vous pouvez également configurer un déclencheur pour exécuter le script automatiquement selon un calendrier (par exemple, quotidien ou hebdomadaire). Pour ce faire, passez votre souris sur les icônes de gauche et cliquez sur “Déclencheurs.”

Déclencheur Apps Script — le journal d'exécution indique que l'exécution est terminée, avec Déclencheurs en surbrillance dans le menu

9. Cliquez sur le bouton “+ Ajouter un déclencheur”bouton ".

Déclencheur Apps Script — page Déclencheurs vide avec le bouton Ajouter un déclencheur en surbrillance

10. Allez à la source de l'événement et choisissez “Axé sur le temps.”

Déclencheur Apps Script — boîte de dialogue Ajouter un déclencheur avec Déclenché par le temps sélectionné comme source d'événement

11. Sélectionnez un type de temps.

Déclencheur Apps Script — liste des types de déclencheur temporel avec le minuteur en minutes en surbrillance
  • Date et heure précises : Pour un déclenchement unique.
  • Minuterie de minutes : Exécuter à un intervalle spécifié en minutes (par exemple, toutes les 15 minutes).
  • Minuterie horaire : Exécuter à un intervalle spécifié en heures (par exemple, toutes les 3 heures).
  • Minuterie de jour : A exécuter quotidiennement à une heure précise.
  • Chronomètre de semaine : Courir certains jours de la semaine à une heure précise.
  • Minuterie mensuelle : A exécuter certains jours du mois à une heure précise.

12. Cliquez sur “Enregistrer.” Le déclencheur est maintenant actif.

Déclencheur Apps Script — sendEmails configuré pour s'exécuter toutes les 15 minutes avec le bouton Enregistrer en surbrillance

Voici l'e-mail que j'ai reçu après avoir exécuté le script.

Google Apps Script dans Google Sheets — boîte de réception Gmail avec l'e-mail Automated Email envoyé par le script

Et voilà ! Vous savez maintenant comment utiliser Google Apps Script dans Google Sheets. Mais examinons d'autres cas d'utilisation et voyons comment Apps Script améliore les feuilles de calcul.

Exemples pratiques de scripts d'application en action

1. Automatiser la saisie des données

Vous pouvez utiliser les scripts Google Apps dans Google Sheets pour automatiser la saisie des données.

La saisie manuelle des données est sujette aux fautes de frappe. Avec l'automatisation, Avec Apps Script, vous réduisez les risques d'erreurs humaines. Apps Script peut extraire des données d'autres sources (comme des sites web, des formulaires ou des courriels) et les insérer automatiquement dans votre feuille de calcul. 

Imaginons que vous receviez par courriel des reçus pour des dépenses professionnelles. Apps Script peut scanner ces courriels, extraire les chiffres pertinents (date, montant, catégorie) et les organiser proprement dans votre feuille de calcul de suivi des dépenses.

Écrivons et expliquons un scénario :

function extractExpensesFromEmails() {

// 1. Récupérer les e-mails non lus contenant des reçus
var label = GmailApp.getUserLabelByName("Receipts"); // Remplacez "Receipts" si votre libellé est différent
var threads = label.getThreads(0, 5); // Récupérer les 5 premiers fils non lus

// 2. Traiter chaque e-mail
for (var i = 0; i < threads.length; i++) {
var messages = threads[i].getMessages();
for (var j = 0; j < messages.length; j++) {
var message = messages[j];

// 3. Extraire les détails de la dépense (exemple simplifié)
var body = message.getBody();
var amountMatch = body.match(/\$\d+\.\d{2}/); // Rechercher les montants en $
var dateMatch = body.match(/\d{2}\/\d{2}\/\d{4}/); // Rechercher les dates MM/DD/YYYY

// 4. Si trouvés, ajouter à la feuille de calcul
if (amountMatch && dateMatch) {
var amount = amountMatch[0];
var date = dateMatch[0];
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet() ;
sheet.appendRow([date, amount, message.getSubject()]); // Ajustez les colonnes selon vos besoins
}
}

// 5. Marquer l'e-mail comme lu
threads[i].markRead();
}
}

Google Apps Script dans Google Sheets — script extractExpensesFromEmails lisant les reçus dans Gmail

Que signifie ce texte ?

Nous supposons que vous disposez d'un libellé Gmail appelé “Reçus” dans lequel vous stockez les courriels de dépenses. Le script récupère les 5 premiers fils de discussion (conversations) non lus de ce libellé. Il parcourt en boucle chaque fil de discussion et ses messages individuels (courriels).

Il extrait ensuite les détails des dépenses. Gardez à l'esprit que nous avons fortement simplifié cette partie. Le script suppose un format spécifique pour les dépenses dans le corps du message (par exemple, “$15.99” et “25/07/2024”).

Ensuite, si le script trouve à la fois le montant et la date, il récupère la feuille de calcul active et ajoute une nouvelle ligne avec les données extraites (et l'objet de l'e-mail pour référence).

Google Apps Script dans Google Sheets — feuille Business Expenses remplie avec les dates, les montants et les fournisseurs

Enfin, après traitement, le script marque le fil de discussion comme lu pour éviter les doublons.

Remarque : Notre script est simplifié. L'exactitude des données dépend entièrement du format de l'e-mail et de la capacité du script à l'analyser correctement. En outre, il se peut que vous ayez des colonnes supplémentaires dans votre système de suivi des dépenses (par exemple, la catégorie, le mode de paiement).

2. Générer des rapports

Vous pouvez également utiliser Google Apps Script dans Google Sheets pour générer des rapports.

Pensez à ces rapports fastidieux que vous devez faire - peut-être des résumés de ventes, des mises à jour de projets ou des notes d'étudiants. Apps Script peut alléger ce processus en extrayant ces données d'une feuille Google ou d'autres endroits. 

Disons que vous suivez vos ventes hebdomadaires dans une feuille Google. Apps Script peut :

  1. Saisissez les derniers chiffres de vente de votre feuille.
  2. Calculez les ventes totales, les ventes par produit et peut-être même la croissance par rapport à la semaine précédente.
  3. Faire un diagramme circulaire ou graphique linéaire et un résumé.
  4. Envoyez le rapport par courrier électronique à votre supérieur tous les lundis matin.

Vous le configurez une fois, puis Google Apps Script fait le reste, semaine après semaine !

Voici un exemple de script, que nous expliquerons plus loin.

function generateSalesReport() {

  // Obtenir les données relatives aux ventes

  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("WeeklySales") ;

  var data = sheet.getDataRange().getValues() ;

  // Calculer les ventes totales et les ventes par produit

  var totalSales = 0 ;

  var salesByProduct = {} ;

  for (var i = 1 ; i < data.length ; i++) { // Sauter la ligne d'en-tête

    var product = data[i][1] ;

    var sales = data[i][2] ;

    totalSales += sales ;

    salesByProduct[product] = (salesByProduct[product] || 0) + sales ;

  }

  // Créer le rapport

  var report = "<h2>Rapport hebdomadaire des ventes</h2>\n\n"\n"\n"\n"\n"\n"\n" ;

  report += "<p>Total des ventes : $" + totalSales.toFixed(2) + "</p>\n\n"\n"\n"\n"\n"\n"\n" ;

  report += "<h3>Ventes par produit :</h3>\n\n"\n"\n"\n"\n"\n"\n" ;

  for (var product in salesByProduct) {

    report += "<p>" + produit + “ : $” + salesByProduct[produit].toFixed(2) + "</p>\n\n"\n"\n"\n"\n"\n"\n" ;

  }

  // Envoyer le courriel

  var emailSubject = "Rapport hebdomadaire des ventes" ;

  var emailBody = report ;

  MailApp.sendEmail(“YOUR_EMAIL_ADDRESS”, emailSubject, “”, {htmlBody : emailBody}) ; // Inclure votre adresse e-mail

}

Google Apps Script dans Google Sheets — fonction generateSalesReport dans l'éditeur Apps Script

Lecture recommandée : Les 5 meilleurs modèles de vente de Google Sheets

Que signifie ce texte ?

Le script récupère toutes les valeurs de la feuille “WeeklySales”. Il parcourt les données en boucle et calcule les ventes totales et les ventes par produit. Il crée ensuite un rapport HTML avec les données calculées. Enfin, le script utilise MailApp.sendEmail pour envoyer le rapport par courrier électronique.

MailApp.sendEmail

Voici une feuille Google regroupant toutes les ventes :

Apps Script Google Sheets — feuille WeeklySales avec les colonnes Week, Product et Sales

Voici à quoi ressemble le rapport des ventes hebdomadaires totales dans l'e-mail :

Google Apps Script dans Google Sheets — gmail affichant le Weekly Sales Report avec les totaux par produit

Remarque : Il s'agit d'un script simplifié. Modifiez “WeeklySales” si votre feuille porte un nom différent. Remplacez “VOTRE_ADRESSE_EMIL” par l'adresse électronique du destinataire.

3. Nettoyer et formater les données

Le nettoyage et la mise en forme des données est une autre façon d'utiliser les scripts d'application dans Google Sheets.

Imaginez que vous ayez une feuille de calcul désordonnée contenant des informations sur vos clients. Certains noms comportent peut-être des espaces supplémentaires, les dates sont dans des formats différents ou certaines cellules contiennent des fautes de frappe. Le nettoyage manuel de ces données serait un véritable casse-tête. C'est là que les scripts d'application interviennent pour vous sauver la mise.

Vous pouvez utiliser les scripts Google Apps pour analyser vos données, trouver et résoudre des problèmes spécifiques, par exemple :

  • Espaces supplémentaires : Supprime automatiquement les espaces supplémentaires avant et après les noms.
  • Formats incorrects : Modifier les dates de “29/07/2024” à “29 juillet 2024” pour que tout corresponde.
  • Fautes de frappe : Si le nom d'un produit est mal orthographié, le script peut le corriger.

Vous pouvez également utiliser les scripts Google Apps pour organiser les informations et combiner ou diviser les données.

Créons un Javascript pour cet exemple.

Imaginez que vous disposiez d'une feuille Google contenant des commandes de clients. Chaque ligne contient des informations telles que l'identifiant de la commande, le nom du client, le produit, la quantité et la date de la commande. Vous souhaitez organiser les commandes par date, en plaçant les commandes les plus récentes en haut de la feuille.

Notre script pourrait ressembler à ceci :

function sortSheetByDate() {

  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet() ;

  var range = sheet.getRange(“A2:E26”) ; // Ajustez la plage pour couvrir vos données

  // Obtenir les données

  var data = range.getValues() ;

  // Vérifier si les dates sont au format objet Date et les convertir en chaînes de caractères.

  data.forEach(function(row) {

    if (Object.prototype.toString.call(row[4]) === '[object Date]') {

      row[4] = Utilities.formatDate(row[4], SpreadsheetApp.getActiveSpreadsheet().getSpreadsheetTimeZone(), 'dd/MM/yyyy') ;

    }

  });

  // Analyser correctement les dates et les trier

  data.sort(function(a, b) {

    var dateA = new Date(a[4].split(‘/’).reverse().join(‘-‘)) ;

    var dateB = new Date(b[4].split(‘/’).reverse().join(‘-‘)) ;

    return dateB - dateA ; // Tri du plus récent au plus ancien

  });

  // Remettre les données triées dans la feuille

  range.setValues(data) ;

}

Apps Script Google Sheets — fonction sortSheetByDate dans Code.gs qui trie les lignes par date

Que signifie ce texte ?

Le script recherche l'ordre des informations que vous souhaitez trier. Il prend ensuite soigneusement toutes les informations de chaque formulaire de commande - nom du client, date de la commande, etc. - et les place dans des cellules séparées. C'est là que la magie opère ! Le script examine chaque date de commande et détermine les commandes les plus récentes et les plus anciennes.

Données dont les dates ne sont pas dans l'ordre chronologique :

Apps Script Google Sheets — feuille Customer Orders avec les dates de commande non triées

Les données avec les dates dans l'ordre chronologique après l'utilisation du script :

Apps Script Google Sheets — feuille Customer Orders après le tri du script par date, de la plus récente à la plus ancienne

Concepts Apps Script essentiels à connaître et à utiliser dans Google Sheets

1. Fonctions personnalisées

Les fonctions personnalisées vous permettent de créer vos propres fonctions que vous pouvez utiliser directement dans Google Sheets, tout comme les fonctions intégrées (SOMME, MOYENNE, etc.) Ces fonctions sont écrites en JavaScript dans Apps Script et peuvent effectuer diverses tâches, allant de simples calculs à des manipulations de données complexes.

Voici un exemple de fonction personnalisée :

function DOUBLE(input) {

  retour de l'entrée * 2 ;

}

Cette fonction personnalisée double les nombres dans une cellule. Après avoir ajouté la fonction personnalisée à l'éditeur de script, retournez à votre feuille de calcul.

Supposons que la cellule A1 contienne le nombre 580.

  • Tapez =DOUBLE(A1) dans la cellule B1.

=DOUBLE(A1)

  • Google Sheets exécute votre fonction et lui attribue la valeur 1160 dans la cellule B1.
  • La fonction calcule 580 * 2 = 1160.
  • La cellule B1 affiche le résultat : 1160.
Fonction personnalisée Apps Script — cellules A1 et B1 de la feuille de calcul avec les valeurs 580 et 1160 en surbrillance

Différence entre une fonction personnalisée et un code général que vous écrivez dans Google Apps Script

La principale différence entre une fonction personnalisée et tout autre code réside dans la manière dont vous l'utilisez et l'appelez dans Google Sheets.

Un code de fonction personnalisé doit renvoyer une valeur, comme :

return input * 2 ;.

Une fonction ne peut modifier aucune partie de la feuille de calcul ni déclencher d'autres actions. Elle ne peut que calculer et renvoyer un résultat en fonction de ses entrées.

De plus, pour utiliser une fonction personnalisée, vous devez entrer le code =functionName() dans une cellule sur la feuille de calcul, par exemple :

 =DOUBLE(A1)

2. Déclencheurs

Vous devez également vous familiariser avec les déclencheurs si vous souhaitez utiliser Google Apps Script dans Google Sheets.

Imaginez que vous ayez une tâche dans Google Sheets qui doit se dérouler automatiquement, sans que vous ayez à cliquer sur un bouton. C'est là que les déclencheurs entrent en jeu ! Un déclencheur est comme un petit réveil que vous mettez en place dans votre code Apps Script. Il indique à votre script de se réveiller et d'exécuter une partie spécifique de votre code lorsqu'un événement particulier se produit dans votre feuille de calcul.

Vous pouvez personnaliser les déclencheurs pour qu'ils exécutent votre script à l'ouverture d'une feuille, à la modification d'une cellule, à l'envoi d'un formulaire ou même à une date et une heure spécifiques.

Déclencheur Apps Script — liste des types d'événement À partir de la feuille de calcul avec À l'ouverture, À la modification, Lors d'un changement et À l'envoi du formulaire

Vous pouvez également utiliser des déclencheurs pour actualiser vos données. Par exemple, un déclencheur pourrait automatiquement intégrer les derniers cours de la bourse ou les dernières informations météorologiques. 

Si vous préférez lancer un script vous-même en un clic, vous pouvez l'associer à un bouton dans Google Sheets.

3. Propriétés et méthodes

Les propriétés et les méthodes vous permettent de modifier le fonctionnement de Google Sheets. Vous pouvez écrire des scripts qui formatent automatiquement les cellules ou déplacent les données. Par exemple, au lieu de modifier manuellement la couleur de centaines de cellules, votre script peut le faire instantanément.

Les propriétés sont les caractéristiques ou les attributs d'un objet. Dans Google Sheets, il pourrait s'agir de

  • La couleur d'arrière-plan d'une cellule :

cell.getBackground()

  • La valeur à l'intérieur d'une cellule :

cell.getValue()

  • La taille de la police du texte :

 cell.getFontSize()

Vous pouvez connaître la valeur actuelle d'une propriété ou la définir pour modifier son apparence ou son comportement.

Les méthodes, quant à elles, sont comme les verbes ou les actions qu'un objet peut effectuer. Par exemple, une cellule dans Google Sheets peut.. :

  • Modifier son contenu :

cell.setValue(“Hello !”)

  • S'effacer complètement :

cell.clearContent()

  • Fusionner avec les cellules voisines :

cell.mergeAcross()

Vous “appelez” une méthode pour que cela se produise. C'est comme donner une instruction.

Voici un exemple de script simple :

function formatImportantCells() {

  var sheet = SpreadsheetApp.getActiveSheet() ;

  var range = sheet.getRange(“A1:B10”) ; // Obtenir un groupe de cellules

  var cells = range.getCells() ; // Obtenir des cellules individuelles

  for (var i = 0 ; i < cells.length ; i++) {

    if (cells[i].getValue() > 100) { // Vérifier la valeur

      cells[i].setBackground(“yellow”) ; // Définir une propriété (couleur)

    }

  }

}

Google Apps Script dans Google Sheets — fonction formatImportantCells qui colore en jaune les cellules supérieures à 100

Ce script vérifie les valeurs des cellules A1 à B10. Si une valeur est supérieure à 100, le script rend l'arrière-plan de la cellule jaune.

En bref :

  • Les propriétés décrivent : Ils vous renseignent sur l'état actuel des choses.
  • Les méthodes le font : Ils font bouger les choses.
  • Notation en points : Vous utilisez un point pour accéder aux propriétés et aux méthodes (par exemple, cell.getValue()).

cell.getValue()

4. Types de données

Les types de données sont un autre concept que vous devez apprendre pour utiliser Google Apps Script dans Google Sheets.

Les types de données sont des étiquettes qui indiquent à Apps Script le type d'information qu'il traite. Tout comme vous feriez la distinction entre des pommes et des oranges, Apps Script a besoin de savoir s'il travaille avec des nombres, du texte, des dates ou d'autres types.

Mais pourquoi les types de données ont-ils de l'importance dans Google Sheets ?

Il y a au moins trois raisons à cela :

  1. Calculs corrects : Imaginez que vous additionnez des dépenses. Si Apps Script pense que vos chiffres sont en fait du texte, vous obtiendrez des résultats bizarres. Les types de données garantissent la précision des calculs.
  2. Formatage correct : Vous voulez que vos dates ressemblent à des dates et que vos numéros de téléphone se comportent comme des numéros de téléphone. Les types de données vous permettent de contrôler l'affichage et l'utilisation des données dans votre feuille de calcul.
  3. Prévention des erreurs : Si vous essayez d'utiliser une date comme s'il s'agissait d'un nombre, Apps Script peut signaler une erreur. Connaître les bons types de données vous permet d'éviter ces problèmes et d'écrire un code qui fonctionne bien.

Supposons que vous suiviez les ventes et que vous disposiez d'une colonne dans Google Sheets avec le nombre d'articles vendus. Lorsque vous utilisez Apps Script pour calculer le total des ventes, il doit comprendre que cette colonne contient des nombres, et pas seulement des caractères aléatoires.

Par exemple, le script ci-dessous mentionne le type de données :

if (valueType === "number") {

Voici la répartition :

  1. valueType : Cette variable stocke le résultat de l'opérateur typeof value. L'opérateur typeof est une fonctionnalité de JavaScript qui indique directement le type de données d'une variable.
  2. === "number" : Cette comparaison vérifie si le type de valeur est strictement égal à la chaîne “number”. Si c'est le cas, le script sait qu'il a affaire à une valeur numérique et l'ajoute au total des ventes.

Nous venons d'aborder quelques concepts ou termes relatifs aux scripts d'applications. Il en existe d'autres, tels que Apps Script Services, Error Handling et Libraries.

Conseils et meilleures pratiques pour Apps Script

1. Apprendre le Javascript

L'apprentissage de JavaScript vous donne une base solide pour comprendre le fonctionnement de Google Apps Script. Il devient beaucoup plus facile de comprendre le code que vous trouvez en ligne, de dépanner vos propres projets et d'écrire des scripts plus avancés.

Une fois que vous aurez assimilé les bases du JavaScript, vous manipulerez des données de manière très intelligente et interagirez avec d'autres services sur le web.

En outre, JavaScript est un langage largement utilisé, de sorte que vos nouvelles compétences ne seront pas perdues. Vous pouvez les appliquer à d'autres projets que Google Apps Script. Par exemple, vous pouvez créer des sites web simples ou même travailler sur des projets de développement web complexes.

2. Écrire un code efficace et facile à maintenir

Votre code est comme une recette, et une bonne recette est.. :

  • Efficace : Il ne gaspille pas d'ingrédients ni de temps. Un code efficace s'exécute plus rapidement et utilise moins de votre quota d'Apps Script (la limite de ce que vos scripts peuvent faire).
  • Maintenable : Il est facile à comprendre et à mettre à jour ultérieurement. Un code facile à maintenir vous évite des maux de tête lorsque vous devez apporter des modifications ultérieurement.

Voici quelques conseils supplémentaires pour Google Apps Script :

  1. Ne nommez pas vos variables “x” ou “temp”. Choisissez des noms qui décrivent ce qu'elles stockent. Par exemple, au lieu de “data”, utilisez “customerNames” ou “orderDates”.”
  2. Divisez votre code en fonctions plus petites et réutilisables. Chaque fonction devrait idéalement effectuer une tâche spécifique. Votre code sera ainsi mieux organisé et plus facile à tester.
  3. Les choses ne se passent pas toujours comme prévu. Utilisez les blocs “try...catch” pour rattraper les erreurs de manière élégante, ce qui évite à votre script de se bloquer de manière inattendue. 
  4. Si vous vous retrouvez à écrire le même code plusieurs fois, créez une fonction pour cela. Ce principe est appelé “Don't Repeat Yourself” (DRY).

3. Déboguer intelligemment

Dans Google Apps Script, les bogues sont des erreurs ou des comportements inattendus dans votre code. Le débogage est le processus qui consiste à trouver et à corriger ces problèmes.

Lorsque Apps Script rencontre un problème, il affiche généralement un message d'erreur. Ce message est votre premier indice. Il vous indique souvent ce qui n'a pas fonctionné. Vous saurez si vous avez utilisé une variable qui n'existe pas, si vous avez divisé par zéro, ou autre. Vous saurez également où l'erreur s'est produite, comme la ligne de code à l'origine du problème.

Apps Script Google Sheets — erreur TypeError en surbrillance dans le journal d'exécution pour generateSalesReport

Apps Script dispose d'un débogueur intégré. C'est comme une version plus puissante de “console.log()”. Vous pouvez mettre votre code en pause, le parcourir ligne par ligne et inspecter les variables en temps réel.

Supposons que vous ayez ce code :

function calculateArea(length, width) {

  var area = length * width ;

  console.log(“La zone est : ” + zone) ; 

}

calculateArea(10,) ; // Remarquez l'absence de l'argument de la largeur

Vous l'exécutez et il se bloque avec une erreur : “TypeError : Cannot read property ‘*’ of undefined”. Que se passe-t-il ?

  1. Lire l'erreur : Il indique que vous essayez d'utiliser l'opérateur ‘*’ (multiplication) sur quelque chose d'indéfini.
  2. Vérifier le code : Vous vous rendez compte que vous avez oublié de donner une valeur à l'argument “width”.

Corriger l'erreur : Remplacer la dernière ligne par :

calculateArea(10, 5) ;

Utilisez les scripts Google Apps pour améliorer vos Google Sheets

Félicitations ! Vous venez de découvrir la puissance d'Apps Script dans Google Sheets. Dans cet article, nous avons vu des cas d'utilisation pratiques et partagé des exemples de scripts. Vous êtes désormais parfaitement équipé pour utiliser Google Apps Script dans Google Sheets.

En automatisant des tâches, en personnalisant des fonctions et même en créant des applications web interactives, vous êtes en bonne voie pour devenir un ninja du tableur. Continuez à apprendre, à créer des scripts et à repousser les limites de ce qui est possible avec Google Sheets.

Pour aller plus loin

Une fois votre premier script en marche, voici de bonnes étapes suivantes, à peu près dans cet ordre :

  • Les déclencheurs, qui exécutent un script selon un calendrier, lorsque quelqu'un modifie la feuille ou lorsqu'une réponse de formulaire arrive.
  • Les menus personnalisés, pour que vos collègues lancent un script depuis la barre de menus de Google Sheets sans ouvrir l'éditeur.
  • Les fonctions personnalisées, comme =DOUBLE(A1), qui fonctionnent comme les formules intégrées.
  • UrlFetchApp, qui importe dans votre feuille des données issues d'autres services et API.

La référence d'Apps Script de Google documente chaque service et chaque méthode, et son guide pour étendre Google Sheets contient des exemples à copier. Si vous préférez ne pas écrire de code pour une tâche simple, vous pouvez enregistrer une macro dans Google Sheets à la place, et Apps Script l'enregistre sous forme de script que vous pourrez modifier plus tard.

FAQ

Comment ajouter l'éditeur de script à Google Sheets ?

L'éditeur de script est intégré à Google Sheets. Vous n'avez pas besoin de l'ajouter séparément.

Comment ouvrir l'éditeur de script dans Google Sheets ?

Allez dans Extensions > Apps Script. Cela ouvrira l'éditeur de script dans un nouvel onglet.

Où se trouve l'éditeur de script dans Google Sheets ?

L'éditeur de script ne se trouve pas physiquement dans votre feuille Google. Il s'ouvre dans un onglet ou une fenêtre distincte lorsque vous y accédez par le menu Extensions. Allez dans Extensions > Apps Script.

Google Apps Script est-il gratuit ?

Oui. Apps Script est gratuit avec n'importe quel compte Google, et vous n'avez pas besoin d'un forfait payant pour utiliser des scripts dans Google Sheets. Ce sont les quotas qui limitent : un script peut s'exécuter jusqu'à 6 minutes d'affilée, et les déclencheurs d'un compte Google gratuit disposent de 90 minutes d'exécution au total par jour. Les comptes Google Workspace bénéficient de quotas plus élevés.

Vous pouvez aussi aimer...

Fonctionnalités et formules de google sheets

Top 5 des formules de tableaux dynamiques dans Google Sheets 

Google Sheets a évolué au-delà des feuilles de calcul de base. Avec l'introduction de formules de tableaux dynamiques, les utilisateurs peuvent désormais manipuler et analyser...
Fonctionnalités et formules de google sheets

Maîtriser la formule FILTER : 4 cas d'utilisation avec exemples

La formule FILTRE de Google Sheets est un outil polyvalent permettant d'extraire des données répondant à des conditions spécifiques. Contrairement à la formule QUERY,...
Fonctionnalités et formules de google sheets

Exploiter la puissance de SUMIF et SUMIFS dans Google Sheets : 4 cas d'utilisation réels

Les formules SUMIF et SUMIFS de Google Sheets sont des outils indispensables pour effectuer des sommations conditionnelles. Elles simplifient les...