Guide du débutant du script Google Sheets
Feuilles Google Google Héros / / August 07, 2020
Dernière mise à jour le
Google Scripts vous permet d'ajouter du code à votre feuille de calcul pour automatiser la saisie de données, importer des données externes dans vos feuilles ou exécuter des calculs selon un calendrier périodique.
Si vous utilisez Google Sheets, vous serez peut-être intéressé de savoir que les scripts Google peuvent considérablement améliorer vos feuilles de calcul.
Pensez aux scripts Google comme VBA dans Microsoft Excel. Il vous permet d'ajouter du code à votre feuille de calcul pour automatiser la saisie des données. Vous pouvez également l'utiliser pour importer des données externes dans vos feuilles. Mieux encore, vous pouvez exécuter des calculs selon un calendrier périodique, même lorsque la feuille de calcul n’est pas ouverte.
Dans cet article, vous découvrirez comment activer Google Scripts et comment écrire et exécuter un script simple.
Comment utiliser les scripts Google
Il y a quelques éléments dans Google Sheets que vous devez activer avant de pouvoir y écrire des scripts Google.
Sélectionnez le menu Outils et sélectionnez Éditeur de script du menu.
Cela ouvrira l'éditeur de scripts Google dans une fenêtre de projet sans titre.
Ce script est en fait contenu dans votre compte Google dans l'outil Google Scripts. Ce projet particulier est lié à la feuille de calcul sur laquelle vous travaillez actuellement.
Vous pouvez écrire un script, mais vous ne pouvez pas l'exécuter tant que les scripts ne sont pas réellement activés dans la feuille. Vous devrez le faire la première fois que vous l'exécuterez (comme vous le verrez ci-dessous).
Pour voir cela en action, créons un script simple.
Créez votre premier script Google
Dans cet exemple, vous allez écrire un script qui additionne toutes les notes du quiz et de l’examen final pour la colonne B (les notes de Chris).
Voici l'exemple de feuille de calcul.
De retour dans la fenêtre Google Scripts, collez le code suivant à l'intérieur des accolades de la fonction myFunction (), comme ceci:
function maFonction () {
var ss = SpreadsheetApp.getActiveSpreadsheet ();
var feuille = ss.getSheets () [0] var range = sheet.getRange (2,2,5);
var values = range.getValues ();
var somme = 0
for (var row in values) {
for (var col in values [row]) {
somme = valeurs [ligne] [col] + somme;
}
}
sheet.getRange (7,2) .setValue (somme);
}
Ce code peut sembler compliqué, mais décomposons exactement ce qu’il fait. C'est plus simple qu'il n'y paraît.
Décomposons ce code une ligne à la fois.
Définition des variables
1. var ss = SpreadsheetApp.getActiveSpreadsheet ();
Cette ligne récupère la feuille de calcul actuelle qui est active. Étant donné que vous n'exécutez ce script que lorsque la feuille de calcul sur laquelle vous souhaitez exécuter le calcul est active, elle obtiendra toujours la bonne feuille de calcul. La feuille est enregistrée en tant que variable «objet» appelée «ss».
2. var feuille = ss.getSheets () [0]
Cela obtient la première feuille et l'enregistre en tant que variable d'objet nommée feuille. Il existe une autre fonction que vous pouvez utiliser pour obtenir la feuille par le nom de la feuille.
Ce serait var feuille = ss.getSheetByName («Sheet1»);
Vous pouvez utiliser l'une ou l'autre des fonctions de votre choix.
3. var range = sheet.getRange (2,2,5);
Cette fonction obtient une plage de valeurs par ligne, colonne et nombre de lignes. Dans ce cas, nous extrayons toutes les valeurs à partir de la deuxième ligne, de la deuxième colonne et obtenons les valeurs cinq lignes plus bas.
La variable "plage" devient ce que l'on appelle un "tableau". Un tableau est une variable qui contient plusieurs valeurs. Dans Google Script, vous faites référence à l'un de ces nombres en utilisant un schéma d'adressage d'élément spécial avec des crochets, comme vous le verrez ci-dessous.
4. var values = range.getValues ();
La fonction getValues () extrait en fait les valeurs de l'objet range que vous avez défini ci-dessus.
5. var somme = 0
Il ne s’agit que d’une seule variable numérique que nous initialisons avec le nombre 0. Cela devient le début de la façon dont nous allons résumer tous les nombres de la colonne.
Création des boucles For
6. for (var row in values) {
C'est ce que l'on appelle une boucle «For». Ce type de boucle parcourt un nombre spécifique d'éléments dans une liste. Dans ce cas, il passera par le tableau "valeurs" dont nous avons parlé ci-dessus. Cette première boucle parcourra toutes les lignes du tableau. Dans ce cas, il n'y en aura qu'un.
Remarque: les lignes de tableau ne sont pas les mêmes que les lignes de feuille de calcul. Lorsque le tableau a chargé les valeurs de la colonne dans la feuille de calcul, il les a placées dans une seule ligne (ou ligne) de données, comme ceci: «89, 92, 78, 98, 89». Donc, dans ce cas, le tableau a une ligne (ligne) et cinq nombres à travers (colonnes).
7. for (var col in values [row]) {
Cette seconde boucle for passera par toutes les «lignes» du tableau. Dans ce cas, il parcourra les 5 valeurs.
8. somme = valeurs [ligne] [col] + somme;
Chaque fois que la boucle s'exécute, cette instruction continuera à additionner la somme de la nouvelle valeur à elle-même. Au moment où les 5 boucles se produisent, les 5 nombres doivent être totalisés dans la variable «somme».
9 sheet.getRange (7,2) .setValue (somme);
Ceci est une instruction à deux fonctions. La fonction getRange pointe vers la cellule de la 7ème ligne et de la 2ème colonne. La fonction setValue place ensuite la valeur de la variable «sum» dans cette cellule.
Maintenant que vous comprenez comment chaque ligne du code fonctionne, il est temps de tout voir en action.
Enregistrer votre script Google
Une fois que vous avez terminé de saisir votre script Google, il est temps de l'enregistrer et de parcourir le code. Tout d'abord, tapez «Projet sans titre» pour donner un nom à votre projet. Ensuite, sélectionnez l'icône de la disquette dans le menu pour enregistrer le script.
Vous pouvez voir une erreur lorsque vous essayez d'enregistrer. Pas de panique. Cela fait en fait partie du processus de débogage. Faites très attention au numéro de ligne où il indique que vous avez une erreur. Regardez attentivement votre code et corrigez les fautes de frappe ou les erreurs de syntaxe que vous pourriez avoir.
Dans cet exemple, ma boucle «for» sur la ligne 8 manquait le symbole d'ouverture «(». Une fois résolu, essayez à nouveau d'enregistrer. Une fois que vous pouvez enregistrer votre code, Google considère que la syntaxe de votre code est correcte.
Cela ne signifie pas que votre code fonctionnera comme prévu, cela signifie simplement qu'il peut "compiler" correctement, sans aucun problème de syntaxe.
Exécuter votre script Google
Sélectionnez maintenant l'icône de lecture en haut pour parcourir votre code. Comme c'est la première fois que vous exécutez votre nouveau script, vous devez autoriser l'application Google Script à accéder à votre feuille de calcul (données) sur votre compte Google. Sélectionner Examiner les autorisations dans la fenêtre contextuelle.
Vous devrez vous connecter à votre compte Google. Et comme il s'agit d'une application personnalisée et non d'une application enregistrée auprès de Google, vous verrez un avertissement indiquant que l'application n'est pas vérifiée. Sélectionnez le Avancée lien puis sélectionnez Accéder à l'exemple de script Google (non sécurisé) continuer.
Sur l'écran suivant, vous devrez sélectionner Autoriser pour autoriser Google Script à accéder à votre compte Google. Une fois que vous avez fait, le script s'exécutera.
Si vous ne voyez aucune erreur, revenez à la feuille de calcul et vous devriez voir les résultats de votre script apparaître au bas de la première colonne.
Rédaction de scripts Google avancés
C'était un script Google très basique qui ajoutait simplement les cellules dans une seule colonne. Si vous souhaitez ajouter des variables aux deux boucles For dans le code, vous pouvez également parcourir toutes les colonnes et fournir un résumé à la ligne 7 pour toutes.
Google Scripts offre toutes sortes de possibilités, comme envoi d'e-mails à partir d'une feuille de calcul. Vous pouvez même puiser dans API Google spéciales qui vous permettent d'intégrer d'autres applications Google telles que Gmail, Agenda et même Google Analytics. Une fois que vous commencez à apprendre à écrire des scripts Google, les possibilités sont infinies.