Aller au contenu principal
Mis à jour le

C'est quoi l'enregistreur de macros Excel ?

L'enregistreur de macros convertit automatiquement les actions faites dans Excel en code VBA, ce qui crée une macro sans écrire une seule ligne de code. Le code produit se rejoue tel quel et reste modifiable ensuite dans l'éditeur VBA.

Boîte de dialogue Enregistrer une macro d'Excel, avec le nom de la macro, la touche de raccourci et l'emplacement
Avant l'enregistrement, la boîte demande le nom de la macro et un éventuel raccourci clavier.

À quoi sert l'enregistreur de macros dans Excel

L'enregistreur de macros Icône du bouton Enregistrer une macro automatise une tâche répétitive sans que tu écrives de code. Il retient une fois la suite de gestes que tu réalises, puis la rejoue à l'identique dès que tu le demandes. Là où tu passais dix minutes à refaire les mêmes manipulations, la macro les exécute en une seconde et t'épargne les fautes d'inattention d'une routine machinale.

Il vise les manipulations que tu répètes à l'identique, toujours dans le même ordre. Reformater un export qui arrive chaque semaine au même format, appliquer des mises en forme à un rapport ou recopier des données d'un onglet vers un autre sont typiquement ce dont il te décharge. Dès qu'une tâche est prévisible et manuelle, elle devient une candidate à l'enregistrement.

C'est aussi la façon la plus douce d'entrer dans le VBA. Tu enregistres une action, tu ouvres le code qu'Excel vient de produire, et tu comprends peu à peu comment il nomme les cellules et les commandes.

Le conseil du pro
L'enregistreur capture tout, tes hésitations et tes Ctrl+Z compris. Déroule ta manipulation une fois dans ta tête avant de lancer l'enregistrement, puis exécute-la d'un trait pour obtenir un code VBA net.

Comment utiliser l'enregistreur de macros dans Excel

L'enregistreur transforme tes actions en code VBA sans que tu écrives une ligne. Lance-le, effectue ta manipulation une seule fois, arrête l'enregistrement, et Excel crée la macro réutilisable à volonté.

  1. 1
    Va dans l'onglet Développeur puis Enregistrer une macro (ou passe par Affichage puis Macros puis Enregistrer une macro).
    Groupe Code de l'onglet Développeur du ruban Excel, avec Enregistrer une macro en haut de la colonne de droite
    Le bouton ouvre la fenêtre où se choisissent le nom et l'emplacement. Une fois l'enregistrement lancé, son libellé devient Arrêter l'enregistrement, au même endroit.
  2. 2
    Donne un nom à la macro, une touche de raccourci facultative, choisis l'emplacement Ce classeur, puis clique sur OK. À partir de là, chaque action est convertie en code VBA.
  3. 3
    Active Utiliser les références relatives dans l'onglet Développeur si la macro doit s'appliquer là où se trouve le curseur, quel que soit l'endroit.
  4. 4
    Effectue tes manipulations habituelles, puis clique sur Arrêter l'enregistrement.
  5. 5
    Ouvre l'éditeur VBA avec Alt+F11 pour lire le code généré et nettoyer les lignes inutiles.
L'astuce en plus
Nommer la macro sans espace ni accentLe nom de la macro n'accepte ni espace ni accent et doit commencer par une lettre. Choisis un nom parlant en collant les mots, comme MiseEnFormeExport, pour la retrouver facilement dans la liste des macros.

Où sont enregistrées les macros créées avec l'enregistreur

Au moment de lancer l'enregistrement, une boîte de dialogue s'ouvre. Sa liste « Enregistrer la macro dans » décide de l'endroit où ta macro va vivre, et donc des classeurs depuis lesquels tu pourras la rejouer. Trois choix te sont proposés.

  1. 1Ce classeur range la macro dans le fichier ouvert, et elle ne se rejoue que tant que ce fichier reste ouvert. C'est le bon choix pour une macro qui ne sert qu'à ce classeur précis.
  2. 2Nouveau classeur crée un fichier vierge pour y déposer la macro, un cas de figure rare puisqu'il faut ensuite penser à enregistrer ce nouveau fichier.
  3. 3Classeur de macros personnelles la garde à part, disponible dans tous tes fichiers Excel sur cette machine. C'est le choix à viser dès qu'une macro doit te servir partout.

Ce réglage ne se rattrape pas facilement ensuite. Déplacer une macro d'un emplacement à l'autre oblige à passer par l'éditeur VBA pour la couper puis la recoller, alors autant viser juste dès la boîte de dialogue.

Pourquoi l'enregistreur de macros ne gère ni les boucles ni les conditions

L'enregistreur ne reproduit que des gestes, jamais des décisions. Il note fidèlement chaque clic et chaque mise en forme, mais il ignore les « si » et les « pour chaque » qui font la logique d'un vrai programme. Une macro enregistrée rejoue donc toujours la même séquence, sans jamais s'adapter à ce qu'elle rencontre.

Concrètement, il ne capture ni une boucle qui traiterait un nombre variable de lignes, ni une condition du genre « si la cellule est vide, fais ceci, sinon fais cela ». Il reste aussi aveugle à ce qui sort d'Excel, comme une boîte de dialogue personnalisée ou une action dans un autre logiciel. Tout ce qui demande de raisonner, et non de répéter, lui échappe.

C'est là que l'enregistreur passe le relais au VBA. Le bon réflexe est d'enregistrer d'abord le squelette de gestes répétitifs, puis d'ouvrir l'éditeur pour ajouter à la main la boucle ou la condition qui manque. Tu combines ainsi la vitesse de l'enregistrement et la souplesse du code écrit.

Le savais-tu ?
Une macro rangée dans le classeur de macros personnelles atterrit dans un fichier caché nommé PERSONAL.XLSB, qu'Excel ouvre en arrière-plan à chaque démarrage. Le supprimer efface d'un coup toutes les macros que tu y avais accumulées.
FAQ

Questions fréquentes sur l'enregistreur de macros

Le moyen le plus rapide est de cliquer sur le petit bouton carré dans la barre d'état, en bas à gauche de la fenêtre Excel. Tu peux aussi passer par l'onglet Développeur > Enregistrer une macro, ou par Affichage > Macros > Enregistrer une macro. Si l'onglet Développeur n'est pas visible, active-le dans Fichier > Options > Personnaliser le ruban en cochant la case Développeur.