La fonctionnalité d'enregistrement d'une macro dans Google Sheets est assez puissante. Les macros automatisent vos tâches répétitives et vous permettent d'accéder au cœur de votre feuille de calcul beaucoup plus efficacement.
Configurer des macros peut s'avérer intimidant, mais n'ayez pas peur. Dans ce tutoriel, je couvre tout ce que vous devez savoir sur l'enregistrement et l'utilisation des macros dans Google Sheets. Je vous montre quelques exemples de macros Google Sheets qui peuvent vous être utiles.
Avant de vous plonger dans la création d'une macro dans Google Sheets, je vous explique un peu ce qu'est une macro.

Qu'est-ce que "Macro" dans Google Sheets ?
Une macro est un morceau de code qui travaille en arrière-plan (le backend) dans Google Sheets (ne vous inquiétez pas, ce n'est pas compliqué…).
Cette macro (ou morceau de code) est une série d'étapes que vous avez définies, et dès que vous utiliserez Google Sheets pour exécuter cette macro, elle suivra automatiquement toutes ces étapes.
Pour vous donner un exemple, supposons que vous avez une plage de données où vous devez faire trois choses :
- Supprimer toutes les données en double
- Supprimer tous les espaces en trop entre les mots
- Ajouter une bordure à la plage de données sélectionnée
Vous pouvez très bien effectuer ces trois opérations manuellement dans Google Sheets (une étape à la fois).
Mais si vous devez répéter ces trois actions, encore et encore, chaque jour ou plusieurs fois par jour. Dans ce cas, vous pouvez créer et enregistrer une macro et automatiser ces étapes. De cette manière, la prochaine fois que vous aurez une base de données à mettre en forme, tout ce que vous aurez à faire sera d'exécuter la macro, et elle effectuera ces trois étapes automatiquement.
Vous n'avez pas besoin d'être un pro en programmation pour créer une macro. Lorsque vous enregistrez une macro, vous montrez simplement à Google Sheets les étapes à suivre. C'est Google Sheets qui crée automatiquement le code pour vous et qui l'utilise plus tard lorsque vous allez exécuter la macro.
Je vais maintenant vous montrer comment enregistrer votre première macro.
Comment créer une macro dans Google Sheets
La création d'une macro dans Google Sheets peut être simple, jetons un coup d'œil aux étapes que vous souhaitez enregistrer dans la macro :
- Sélectionner la cellule A1 dans la feuille de calcul
- Entrer le texte Bonjour dans la cellule
- Choisir une couleur de remplissage pour la cellule (ici le bleu)
Voici les étapes qu'il faut suivre pour enregistrer cette macro dans Google Sheets :
- Dans la barre de menu, cliquez sur "Extensions"

- Passez votre curseur sur l'option "Macros" : cela va afficher quelques options supplémentaires
- Cliquez ensuite sur "Enregistrer une macro" dans Google Sheets. Cela va activer l'enregistrement de macros et va aussi afficher une boîte de dialogue

- Dans la boîte de dialogue Macro qui s’ouvre, sélectionnez l'option "Utiliser des références absolues" (cette option est expliquée plus loin dans ce tutoriel)

Les étapes ci-dessus permettent de démarrer l'enregistrement de la macro. À partir de ce moment (jusqu'à ce que vous arrêtiez l'enregistreur de la macro), Google Sheets va garder une trace de tout ce que vous faites et convertir vos étapes en un code dans le backend.
Maintenant que Google Sheets enregistre chaque étape de votre travail, il est temps de faire les trois choses que vous voulez automatiser :
- Sélectionnez la cellule A1 dans la feuille de calcul
- Entrez le texte "Bonjour" dans la cellule
- Remplissez la cellule avec la couleur jaune (utilisez l'icône "Couleur de remplissage" de la barre d'outils)
Une fois que vous avez fait ces trois choses, cliquez sur l'option “Enregistrer” dans la boîte de dialogue Macro.

Cela va ouvrir la fenêtre de dialogue intitulée "Enregistrer une nouvelle macro", dans laquelle vous allez devoir donner un nom à la macro. Il est conseillé de le garder court mais suffisamment descriptif pour savoir ce que fait cette macro. Dans cet exemple, je nomme la macro "Bonjour cellule jaune"
Vous avez également la possibilité de créer un raccourci clavier pour cette macro. Lorsque vous créez un raccourci, vous pouvez ensuite utiliser ce raccourci clavier pour exécuter la macro. Google Sheets vous permet d'avoir un raccourci au format suivant : Control + Alt + Shift + Nombre (où le nombre peut être compris entre 0 et 9)

Une fois la macro enregistrée, son enregistrement dans Google Sheets peut prendre quelques secondes. C'est le temps que Google Sheets a besoin pour convertir votre macro en un script Google Sheets (c'est le code que Google Sheets utilise).
Une fois l'enregistrement de la macro terminé, vous verrez une notification en bas à gauche de votre document Google Sheets. Il affiche également l'option "Modifier le script", et si vous cliquez dessus, si vous suivez toutes les étapes de création d'une macro dans les feuilles de calcul Google, il ouvrira l'éditeur de Google Apps Script et vous montrera le code qu'il a enregistré.

Exécuter la macro dans Google Sheets
Une fois que vous avez enregistré la macro, vous pouvez l'exécuter quand vous le souhaitez et elle suivra les étapes que vous lui avez montrées lors de l'enregistrement de la macro.
Il existe plusieurs façons d'exécuter une macro dans Google Sheets :
- En utilisant l'option Macro dans le menu "Extensions"
- En utilisant un raccourci clavier
- À partir de l'éditeur de Google Apps Script
- En affectant la macro à une image ou un logo
Je vous explique rapidement chacune de ces méthodes d'exécution d'une macro dans Google Sheets
Enregistrer les macros dans Google Sheets (les options)
Une fois que vous avez enregistré une macro, vous pouvez facilement l'exécuter à partir du menu "Extensions".
Dans la barre des menus, cliquez sur Extensions et passez votre suite votre curseur sur l'option Macros.
Dans les options parmi lesquelles choisir (qui apparaissent), vous verrez toutes les macros répertoriées en bas (après les trois premières options).

Dès que vous cliquez sur l'un des noms de macro, il sera exécuté immédiatement.
Google Sheets n'est pas aussi rapide que d'autres tableurs (comme Excel, par exemple). C'est pour ça que lorsque vous cliquez sur l'un des noms de macro cela peut prendre quelques secondes pour l'exécuter. Cela dépend également de l'automatisation de Google Sheets que vous avez enregistrée avec la macro. S'il y a plusieurs étapes, cela peut prendre plus de quelques secondes.
Utiliser un raccourci clavier pour exécuter une macro
Lorsque vous enregistrez une macro dans Google Sheets, il va vous être demandé de préciser un raccourci clavier (c'est une étape facultative). Ce raccourci clavier peut être attribué dans la boîte de dialogue où vous donnez un nom à la macro.
Une fois le raccourci clavier défini, vous pouvez tout simplement utiliser ce raccourci et Google Sheets va instantanément exécuter la macro.
L'exécution de la macro peut prendre quelques secondes et dépend du nombre d'étapes enregistrées dans la macro.
Exécuter une macro à partir de Apps Script
Lorsque vous créez et enregistrez une macro dans Google Sheets, les étapes sont automatiquement enregistrées dans Google Apps Script.
Si vous souhaitez exécuter une macro, vous pouvez le faire à partir de l'éditeur Apps Script.
Pour cela, vous devez d'abord ouvrir l'éditeur Google Apps Script (en cliquant sur le menu "Extensions" puis sur Apps Script).

Lorsque l'éditeur de script s'ouvre, sélectionnez la macro que vous souhaitez exécuter (dans la liste déroulante "Sélectionner la fonction à exécuter") et cliquez ensuite sur le bouton “Exécuter” avec le symbole de lecture dans la barre d'outils.

Affecter une macro à une image ou une forme
Vous pouvez également insérer une image ou un logo dans votre feuille de calcul, puis en faire un bouton en y affectant votre macro.
Pour créer ce bouton, cliquez sur le menu "Insertion" puis cliquez sur "Dessin".
Cela va ouvrir une boîte de dialogue intitulée "Dessin".
Cliquez sur l'icône "Formes" dans la boîte de dialogue et insérez la forme que vous souhaitez utiliser comme bouton pour exécuter la macro.
Lorsque vous cliquez sur une forme, vous devez la dessiner dans la zone prévue. Une fois que vous l'avez dessinée et cliqué sur Enregistrer et fermer, la forme sera insérée dans la feuille de calcul.

Pour attribuer une macro à cette forme, sélectionnez la forme et cliquez sur les trois points qui apparaissent dans le coin supérieur droit.

Dans les options qui s'affichent, cliquez sur "Assigner le script".

Les étapes ci-dessus vont ouvrir la boîte de dialogue "Assigner le script", dans laquelle vous devrez entrer le nom du script que vous souhaitez exécuter. Malheureusement, au moment de la rédaction de ce tutoriel, il n'existe aucun moyen d'obtenir une liste de tous les noms de macros directement dans cette boîte de dialogue. Vous devez connaître le nom exact de la macro et le saisir ici.
Désormais, chaque fois que vous allez cliquer sur la forme, la macro sera immédiatement exécutée.
Référence absolue ou relative des cellules pendant l’enregistrement de la macro
Lorsque vous utilisez une référence de cellule dans Google Sheets, elle est soit absolue soit relative.
- Référence de cellule absolue : $A$1
- Référence de cellule relative : A1
Les références de cellules absolues signifient que si vous les copiez et les collez dans des formules, ces références ne changeront pas. Celles-ci sont absolues. Par exemple, si vous avez des valeurs dans la plage de cellules A1:A10 et que vous avez la formule =SOMME($A$1:$A$10) dans la cellule B1.
Cette formule utilise les références de cellules absolues. Cela signifie que si vous copiez et collez cette formule de la cellule B1 à B2 (ou dans n'importe quelle autre cellule de la feuille de calcul), cela ne changera pas les cellules auxquelles elle fait référence.
Au contraire, si la formule saisie dans la cellule B1 est =SOMME(A1:A10), elle utilise des références de cellule relatives. Si vous copiez et collez cette formule de la cellule B1 à B2, la formule devient alors =SOMME(A2:A11).
La formule change parce que le fait d'utiliser une référence de cellule relative ne verrouille pas les références des cellules. Ces références sont relatives à la position où elles sont utilisées.
Si je copie cette formule de la cellule B1 à C1, la formule devient =SOMME(B1:B10) parce que j'ai décalé la formule d'une colonne vers la droite (de B à C), la référence dans la formule a également été décalée d'une colonne.
En ce qui concerne les macros dans Google Sheets, vous pouvez enregistrer une macro avec des références de cellule absolues ou relatives. Cette option apparaît dès que vous commencez à enregistrer la macro.
Lorsque vous enregistrez une macro avec un référencement absolu des cellules, elle se souviendra des cellules ou des plages que vous avez sélectionnées et utilisera les mêmes cellules lorsque vous exécuterez la macro. Par exemple, si vous enregistrez une macro pour saisir le texte "Bonjour" dans la cellule A1, lorsque vous exécutez à nouveau cette macro, elle reviendra toujours à la cellule A1 et y saisira le texte "Bonjour".
Mais avec des références de cellules relatives, la macro se souvient de la position où vous avez commencé, puis se déplace par rapport à cette position. Par exemple, si je commence à enregistrer la macro lorsque la cellule B1 est sélectionnée et que je sélectionne ensuite la cellule A1 pour y saisir le texte "Bonjour", la macro de Google Sheets va se souvenir que je me suis déplacé d'une cellule vers la gauche.
La prochaine fois que vous allez exécuter cette macro, si c'est la cellule K1 qui est sélectionnée (par exemple), la macro va saisir le texte dans la cellule J1 (qui se situe une cellule à gauche de la cellule sélectionnée).
Les avantages de l’enregistreur de macros
Voici les avantages d'utiliser une macro enregistrée :
- L'enregistreur de macros vous offre une interface facile à utiliser qui vous permet de montrer à Google Sheets les étapes exactes que vous souhaitez automatiser. Une fois que vous avez terminé, Google Sheets crée un code pour les étapes que vous avez réalisées. Grâce à l'enregistreur de macro, vous pouvez créer et exécuter une macro sans jamais toucher au code.
- Si vous créez vous-même un code et que vous vous sentez bloqué, vous pouvez utiliser l'enregistreur de macro et regarder le code qu'il crée. Pour les débutants qui apprennent Google Apps Script, un enregistreur de macros peut être un excellent guide
Ce qu’une macro ne peut pas faire dans Google Sheets
Bien que les macros soient vraiment utiles et étonnantes, celles-ci ont certaines limites :
- Impossible de créer des fonctions personnalisées : Google Apps Script est très utile pour créer des fonctions personnalisées. Malheureusement, vous ne pouvez pas créer de fonction personnalisée avec un enregistreur de macros. Pour créer une fonction personnalisée, vous devez écrire le code manuellement et préciser le type de résultat que vous souhaitez que cette fonction vous donne.
- Impossible de créer une macro dans Google Sheets à exécuter en fonction d'événements : supposons que vous souhaitez qu'une macro s'exécute chaque fois qu'un utilisateur ouvre un classeur, sélectionne une cellule spécifique ou apporte une modification à la feuille de calcul. Vous ne pouvez pas le faire à l'aide d'un enregistreur de macros. Ce sont des événements et puisque vous voulez qu'une macro se déclenche lorsque l'événement se produit, vous devrez préciser manuellement l'événement déclencheur et le code de la macro.
- Impossible d'exécuter la macro sans sélectionner l'objet : lorsque vous commencez à enregistrer une macro dans Google Sheets, elle suit simplement toutes les étapes que vous suivez et crée un code basé sur celles-ci. Pour ce faire, il est nécessaire de montrer à la macro les étapes exactes à suivre. Cela signifie que la macro ne peut enregistrer que ce qu'elle voit à l'écran et ne peut pas aller faire de modifications dans les autres feuilles de documents qui ne sont pas sélectionnés. Vous pouvez toutefois le faire lorsque vous écrivez le code manuellement.
- Impossible de créer des boucles : supposons que vous souhaitez qu'une macro parcoure chaque cellule d'une plage et supprime la ligne si la valeur de la cellule est "Non" et la conserve si elle est "Oui". Vous ne pouvez pas faire cela avec une macro. Bien sûr, il existe d'autres moyens pour y parvenir (comme appliquer un filtre et supprimer les cellules), mais avec un enregistreur de macros vous ne pouvez pas parcourir les cellules (c'est, par contre, possible quand vous écrivez manuellement le code).
- Impossible d'analyser les conditions et de prendre des mesures en fonction de celles-ci : avec l'enregistreur de macros, puisque vous ne pouvez pas parcourir les cellules d'une plage, il n'est pas non plus possible d'analyser les conditions et de prendre des mesures en fonction de celles-ci. Par exemple, supposons que je souhaite parcourir toutes les feuilles de calcul du document Google Sheets et obtenir une liste de tous les noms de feuille de calcul dans la feuille active. Cela ne peut pas être fait avec un enregistreur de macros : vous devez écrire le code manuellement pour cela.
Comment modifier et supprimer les macros Google Sheets
Vous pouvez modifier et supprimer des macros en suivant ces étapes simples :
- Accédez à Extensions> Macros> Gérer les macros
- Modifiez la macro ou pour supprimer, appuyez sur l'icône des trois petits points et cliquez sur Supprimer

- Cliquez ensuite sur “Mettre à jour”
Comment planifier une macro
Vous pouvez souhaiter configurer une macro pour qu'elle ne s'exécute qu'à certains moments ou en réaction à un déclencheur. Vous pouvez le faire à l'aide de Apps Script en suivant ces étapes :
- Accédez à Extensions> Apps Script
- Cliquez sur l’icône en forme de chronomètre sur la gauche de votre écran pour accéder aux déclencheurs

- Une nouvelle fenêtre s'ouvre, cliquez sur “Ajouter un déclencheur” dans le coin inférieur droit de votre écran

- Définissez ensuite les paramètres de déclenchement

Vous pouvez utiliser “Sélectionnez la source de l'événement” pour décider si vous souhaitez déclencher une macro avec une action dans la feuille de calcul, en fonction de l'heure ou du calendrier. Chacune de ces options va modifier les sélections disponibles dans le menu déroulant “Sélectionnez le type d'événement”.
Les meilleures pratiques pour les macros dans Google Sheets
Voici quelques conseils pour tirer le meilleur parti de vos macros dans Google Sheets :
- Vérifiez que votre macro a bien été enregistrée avant de continuer
- Vérifiez le langage de script par rapport à ce que vous souhaitez obtenir avec la macro
- Nommez vos macros afin qu'elles soient faciles à activer et à désactiver lorsque vous en avez besoin
- Importez des macros existantes dans votre feuille de calcul pour gagner du temps
Questions sur les macros dans Google Sheets
Les macros Google Sheets sont-elles disponibles dans le monde entier
Non, ce n'est pas le cas, mais vous pouvez facilement importer une macro dans une nouvelle feuille.
Qu’est-ce que l’enregistrement d’une macro dans Google Sheets ?
L'enregistrement d'une macro consiste à enregistrer un ensemble de tâches que vous répétez régulièrement afin de ne pas avoir à les réaliser manuellement à chaque fois. La macro permet ensuite d'exécuter automatiquement ces tâches en un clic (et donc de gagner du temps).
Enregistrer une macro dans Google Sheets : pour aller plus loin
Maintenant que vous savez comment enregistrer une macro, Google Sheets propose de nombreuses autres possibilités d'automatisation dans Google Sheets sous forme de scripts. Si vous voulez devenir un pro de l'automatisation dans les feuilles de calcul Google Sheets, vous êtes obligé de vous pencher sur Apps Script.
En attendant, vous pouvez parcourir mes autres articles TopSheets.fr pour progresser dans votre utilisation de Google Sheets.



