L'enregistreur de macros
L'enregistreur de macros transforme vos clics en code VBA. C'est la porte d'entrée idéale : on fait la manipulation une fois, Excel écrit le code, et on apprend en le relisant. Il a aussi ses limites, qu'il faut connaître pour passer à la suite.
Télécharger la fiche PDF gratuiteSans inscription, mise en page prête à imprimer01Définition
L'enregistreur de macros mémorise vos actions dans Excel et les traduit en instructions VBA, que vous pouvez ensuite rejouer d'un clic ou d'un raccourci clavier.
Une macro est simplement une procédure VBA, c'est-à-dire une suite d'instructions rangée entre Sub et End Sub. L'enregistreur l'écrit à votre place dans un module du classeur.
02Afficher l'onglet Développeur
Tout se passe dans l'onglet Développeur, masqué par défaut.
- Ouvrez Fichier > Options > Personnaliser le ruban.
- Dans la liste de droite, cochez Développeur, puis validez.
- L'onglet apparaît : il contient les boutons Enregistrer une macro, Macros et Visual Basic (raccourci
Alt + F11).
03Enregistrer une macro, étape par étape
- Cliquez sur Enregistrer une macro.
- Donnez un nom sans espace ni caractère spécial, par exemple
MiseEnFormeEntete. - Choisissez si besoin un raccourci : préférez
Ctrl + Maj + lettre, pour ne pas écraser un raccourci d'Excel commeCtrl + C. - Choisissez où stocker la macro : Ce classeur, ou Classeur de macros personnelles pour la retrouver dans tous vos fichiers.
- Faites vos manipulations, puis cliquez sur Arrêter l'enregistrement.
Par défaut, l'enregistreur note des adresses fixes : « la cellule B3 ». Activez Utiliser les références relatives avant d'enregistrer si la macro doit agir à partir de la cellule active, quelle qu'elle soit.
04Relire le code produit
Ouvrez l'éditeur avec Alt + F11 : la macro se trouve dans un module, en général Module1. Voici ce que produit l'enregistreur pour mettre en gras et colorer une ligne d'en-tête :
Sub MiseEnFormeEntete() ' ' MiseEnFormeEntete Macro ' Range("A1:D1").Select Selection.Font.Bold = True With Selection.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .Color = 16247773 .TintAndShade = 0 .PatternTintAndShade = 0 End With Range("A1").Select End Sub
Le code fonctionne, mais il est bavard : il sélectionne avant d'agir et recopie toutes les propriétés, même celles que vous n'avez pas touchées.
05Nettoyer le code
Trois réflexes suffisent pour rendre un code enregistré plus court, plus rapide et plus fiable :
- supprimer les
.Selectet agir directement sur l'objet ; - supprimer les propriétés inutiles ;
- regrouper les actions sur un même objet avec With End With.
Sub MiseEnFormeEntete() With Range("A1:D1") .Font.Bold = True .Interior.Color = RGB(221, 235, 247) End With End Sub
06Pièges à éviter
Un classeur .xlsx ne peut pas contenir de macros : Excel les supprime à l'enregistrement. Enregistrez au format Classeur Excel prenant en charge les macros (.xlsm).
Une action réalisée par une macro ne s'annule pas avec Ctrl + Z. Testez toujours une nouvelle macro sur une copie du fichier.
Un clic de trop, un défilement, une cellule sélectionnée par erreur : l'enregistreur note tout. Préparez votre manipulation avant de cliquer sur Enregistrer.
Un fichier .xlsm reçu par mail ou téléchargé peut avoir ses macros bloquées. Clic droit sur le fichier, Propriétés, puis cochez Débloquer.
07Les limites de l'enregistreur
L'enregistreur ne sait pas écrire de condition, de boucle ni de variable : il rejoue toujours exactement la même chose. Dès qu'il faut que la macro décide (If Then Else) ou répète (For Next), il faut écrire le code soi-même. C'est tout l'objet des fiches suivantes.
08Questions fréquentes
À quoi sert l'enregistreur de macros dans Excel ?
L'enregistreur de macros mémorise vos actions dans Excel et les traduit en instructions VBA, que vous pouvez ensuite rejouer d'un clic ou d'un raccourci clavier.
Quel est le piège le plus fréquent avec l'enregistreur de macros ?
Enregistrer en .xlsx. Un classeur .xlsx ne peut pas contenir de macros : Excel les supprime à l'enregistrement. Enregistrez au format Classeur Excel prenant en charge les macros (.xlsm).
La fiche « L'enregistreur de macros » est-elle gratuite ?
Oui. La fiche est en accès libre et gratuit, sans inscription : vous pouvez la lire en ligne et télécharger sa version PDF. Elle fait partie du cours VBA gratuit de mesetudesdecas.fr, qui compte 21 fiches.
Passez de la fiche à la mise en situation
Les études de cas mesetudesdecas.fr placent vos apprenants face à un vrai besoin d'entreprise. L'étude de cas XL-05 fait automatiser un devis commercial de bout en bout, macros comprises, avec énoncé, corrigé et pas-à-pas du formateur.
Découvrir l'étude de cas XL-05Toutes les fiches du cours VBA gratuit
Voir aussi le cours gratuit sur les formules Excel
Fiche V1.2 | Dernière mise à jour : 29/10/2026 | Clément Delobel, formateur Excel et VBA