Les macros Google Sheets vous permettent d'enregistrer une tâche répétitive une seule fois, comme mettre en forme un tableau ou nettoyer un rapport, puis de la rejouer d'un clic ou avec un raccourci clavier. Vous n'avez pas besoin d'écrire de code pour en enregistrer une, et chaque macro est enregistrée en Google Apps Script : vous pouvez donc la modifier plus tard.
Ce guide explique ce que sont les macros, pourquoi Google Sheets n'a aucun paramètre pour les activer et comment enregistrer, exécuter, modifier et importer les vôtres. Il se termine par deux exemples que vous pouvez copier.
Que sont les macros Google Sheets ?
Les macros sont de petits programmes que vous pouvez créer dans Google Sheets. Comme vous n'avez pas besoin de coder, elles sont devenues une fonctionnalité très utile pour automatiser les tâches répétitives, quel que soit votre niveau. Par exemple, si l'une de vos tâches quotidiennes consiste à mettre en forme des tableaux selon un processus précis, vous pouvez enregistrer ce processus avec l'enregistreur de macros (consultez la dernière section de cet article pour des exemples plus détaillés).
L'avantage est évident, en plus de vous épargner beaucoup de travail manuel : les macros Google Sheets vous aident à vous concentrer sur les tâches à plus forte valeur pour votre entreprise. Par exemple, vous pouvez utiliser des macros pour automatiser des analyses avancées ou élaborer des formules complexes. En enregistrant des tâches comme le filtrage ou la mise en forme des données saisies, vous pourrez aussi fournir des informations plus précises et plus cohérentes.
L'enregistreur de macros est une fonctionnalité de Google Sheets. Google Docs et Google Slides n'en ont pas : pour les automatiser, vous devez écrire vous-même du code Apps Script.
Comment activer les macros dans Google Sheets
Google Sheets n'a aucun paramètre pour activer les macros. Dans Excel, les paramètres de sécurité peuvent bloquer les macros jusqu'à ce que vous les autorisiez, mais dans Google Sheets, elles fonctionnent par défaut. La seule chose que vous approuvez est une autorisation unique : la première fois que vous exécutez une macro, Google vous demande l'autorisation de laisser son code Apps Script travailler avec votre feuille de calcul. Les étapes 6 à 8 de la section suivante montrent ces demandes.
Imaginons qu'un collègue ait partagé avec vous une feuille de calcul contenant une macro enregistrée qui accélère la mise en forme des tableaux. Voici comment la trouver et l'exécuter.
1. Ouvrez le fichier Google Sheets qui contient la macro enregistrée et accédez à Extensions > Macros.
2. Une liste de macros devrait s'afficher. Pour en exécuter une, cliquez dessus.
Conseil : Si la macro a un numéro de raccourci, vous pouvez aussi l'exécuter en appuyant sur Ctrl + Alt + Shift et ce numéro, par exemple Ctrl + Alt + Shift + 1. Notre guide des raccourcis clavier de Google Sheets en présente bien d'autres.
Si aucune liste de macros ne s'affiche, la feuille de calcul ne contient encore aucune macro enregistrée. Voyons comment enregistrer votre propre macro en quelques étapes simples.
Comment créer des macros dans Google Sheets
1. Ouvrez un nouveau fichier Google Sheets et accédez à Extensions > Macros > Enregistrer une macro.
Conseil : Pour créer un fichier Google Sheets sans passer par votre Drive, saisissez "sheets.new" dans votre navigateur. Si vous êtes dans votre Drive, vous pouvez appuyer sur Shift + s.
2. Dans le panneau ci-dessous, vous verrez deux options : "Utiliser des références absolues" ou "Utiliser des références relatives". Si vous comptez répéter le même calcul sur plusieurs lignes ou colonnes, sélectionnez l'option "Utiliser des références relatives".
Conseil : Utilisez des références absolues si vous souhaitez appliquer la macro à de nouveaux jeux de données situés dans la même plage à chaque exécution. Les références relatives sont plus souvent utilisées pour appliquer des formules à des cellules. Notez que la macro s'appliquera à la cellule où se trouve votre curseur à ce moment-là.
3. L'enregistreur de macros affiche chacune de vos actions. Une fois votre tâche terminée, cliquez sur "Enregistrer".
4. Dans la boîte de dialogue "Enregistrer la nouvelle macro", saisissez un nom. Vous pouvez aussi, si vous le souhaitez, saisir un chiffre de 0 à 9 pour créer votre propre raccourci d'exécution de la macro. Cliquez sur "Enregistrer" pour terminer.
5. Accédez à Extensions > Macros. Pour exécuter la macro, cliquez dessus.
6. La première fois que vous exécutez une macro, Google Sheets vous demande l'autorisation. Cliquez sur "Continuer".
7. Sélectionnez le compte Google avec lequel vous souhaitez exécuter cette macro.
8. Cliquez sur "Autoriser" pour confirmer que vous faites confiance à la macro enregistrée.
Comment modifier, renommer ou supprimer une macro
Chaque macro que vous enregistrez est sauvegardée sous forme de fonction dans le projet Apps Script de la feuille de calcul. Pour gérer vos macros, accédez à Extensions > Macros > Gérer les macros. Vous pouvez y renommer une macro ou modifier son numéro de raccourci. Cliquez sur le menu à trois points à côté d'une macro et choisissez Modifier le script pour ouvrir son code dans Apps Script, ou Supprimer pour la retirer du menu Macros.
Supprimer une macro de ce menu n'efface pas son code. La fonction reste dans le projet Apps Script jusqu'à ce que vous la supprimiez aussi à cet endroit.
Comment utiliser les macros dans Google Sheets : exemples
Jusqu'ici, nous avons vu des exemples simples pour montrer comment activer et créer des macros Google Sheets. Vous pouvez aussi créer des macros à partir de code avec Google Apps Script, l'équivalent dans Google Sheets de Visual Basic for Applications (VBA) dans Excel. Pas d'inquiétude ! Il existe des codes prêts à l'emploi pour les tâches répétitives : vous n'avez toujours pas besoin d'apprendre une seule ligne de code.
Exemple 1 : trier toutes vos feuilles par ordre alphabétique
Si votre feuille de calcul comporte de nombreux onglets nommés, ce code les classe par ordre alphabétique. Pour d'autres façons de gérer les onglets, découvrez comment travailler avec plusieurs feuilles.
1. Ouvrez Google Sheets et accédez à Extensions > Apps Script.
2. Un nouvel onglet s'ouvre dans votre navigateur. Copiez et collez le code suivant sur une nouvelle ligne :
// sort sheets alphabetically
function sortSheets() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheets = spreadsheet.getSheets();
var sheetNames = [];
sheets.forEach(function(sheet, i) {
sheetNames.push(sheet.getName());
});
sheetNames.sort().forEach(function(sheet, i) {
spreadsheet.getSheetByName(sheet).activate();
spreadsheet.moveActiveSheet(i + 1);
});
}
3. N'oubliez pas d'enregistrer le script en cliquant sur l'icône de disquette, comme illustré ci-dessous.
4. De retour dans votre feuille de calcul, accédez à Extensions > Macros > Importer une macro pour importer cette fonction en tant que macro.
Conseil : Si Importer une macro est grisé, Google Sheets n'a trouvé aucune fonction à importer. Les fonctions déjà présentes dans le menu Macros ne comptent pas. Enregistrez le script, actualisez la feuille de calcul et réessayez.
5. Cliquez sur "Ajouter une fonction" pour l'ajouter à votre liste de macros.
6. Accédez à Extensions > Macros et cliquez sur la macro que vous venez d'importer.
7. Google Sheets trie automatiquement vos feuilles par ordre alphabétique, comme illustré ci-dessous.
Et voilà : vous avez transformé une fonction Apps Script en macro Google Sheets.
Exemple 2 : réinitialiser tous les filtres
Les filtres servent souvent à visualiser et à interpréter vos données plus facilement et plus clairement. Cependant, vos filtres n'intéressent pas forcément toute votre équipe, qui doit alors les supprimer chaque fois que vous partagez les données. Cette macro les efface en une seule fois. Si vos collègues ont besoin de leur propre vue des mêmes données, les vues filtrées permettent à chacun de filtrer sans affecter les autres utilisateurs.
1. Ouvrez Google Sheets et accédez à Extensions > Apps Script.
2. Un nouvel onglet s'ouvre dans votre navigateur. Copiez et collez le code suivant sur une nouvelle ligne :
// reset all filters for a data range on current Sheet
function resetFilter() {
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getDataRange();
range.getFilter().remove();
range.createFilter();
}
3. Suivez les étapes 3 à 6 de l'exemple précédent.
Comme précédemment, dès que vous exécutez la macro, Google Sheets réinitialise automatiquement en quelques secondes tous les filtres que vous avez créés.
Conclusion
Si Excel propose des fonctionnalités puissantes pour automatiser des tâches, comme Power Automate ou Power Query, les macros Google Sheets offrent désormais elles aussi de puissantes fonctionnalités d'automatisation. De plus, Google Apps Script est l'équivalent de VBA dans Excel et ouvre la voie à un plus large éventail de tâches qui vous aident à accélérer les plus complexes.
Vous savez maintenant ce que sont les macros Google Sheets, pourquoi la seule chose à activer est une autorisation unique et comment enregistrer et exécuter les vôtres. Vous devriez aussi vous sentir prêt à utiliser Apps Script pour créer des fonctions et les importer afin de les exécuter comme macros Google Sheets.
Une macro fonctionne au sein d'une seule feuille de calcul. Lorsque les mêmes données doivent circuler entre plusieurs fichiers, Sheetgo, une plateforme d'automatisation des données basée sur l'IA, connecte vos feuilles de calcul et les tient à jour selon une planification. Pour gagner encore du temps, lisez nos 10 astuces pour tirer le meilleur parti de Google Sheets.



