Macro Excel : définition, exemples concrets et comment créer la vôtre (guide 2026)

20/08/2025

Macro Excel : définition, exemples concrets et comment créer la vôtre (guide 2026)

Guide pratique · Publié le 20 août 2025 · Mis à jour le 9 octobre 2026 · Lecture : 11 min · Par Dylan Gauthier, Brio Formation

Une macro Excel, c'est une suite d'actions enregistrée une fois et rejouée en un clic. Nettoyer un export, mettre en forme un rapport, envoyer les mêmes calculs chaque lundi : tout ce que vous refaites à l'identique peut être automatisé. Voici le guide complet, daté et sourcé : définition, exemples concrets, création pas à pas sans coder, macros bloquées, et ce que changent en 2026 Office Scripts et l'IA de Copilot.

⚡ Mise à jour du 9 octobre 2026 : ce qui a changé depuis la première version

Copilot dispose depuis janvier 2026 d'un mode Agent dans Excel pour Windows et Mac, capable d'enchaîner plusieurs actions à partir d'une simple demande. Il ne remplace pas les macros : il complète. Côté Windows, Microsoft prépare la désactivation par défaut de VBScript, annoncée « vers 2026 ou 2027 ». Le langage VBA des macros n'est pas supprimé, mais les macros qui s'appuient sur VBScript doivent être vérifiées. Nous détaillons ces deux points plus bas.

L'essentiel en 30 secondes :

  • Une macro Excel est une série d'actions enregistrée et rejouable à volonté. Elle est écrite en VBA (Visual Basic for Applications), le langage de programmation intégré à Excel.
  • Pas besoin de coder pour commencer : l'enregistreur de macros de l'onglet Développeur transforme vos clics en code.
  • Un classeur avec macros s'enregistre au format .xlsm. Au format .xlsx, les macros sont perdues.
  • Les macros contenues dans un fichier venu d'Internet ou d'un e-mail sont bloquées par défaut sous Windows. C'est une protection contre les logiciels malveillants, pas un bug.
  • Les macros VBA fonctionnent sur Excel pour Windows et Mac, mais pas dans Excel pour le web, où l'alternative s'appelle Office Scripts.
  • L'IA (Copilot, ChatGPT, Claude) sait écrire du code VBA, mais il faut savoir le lire et le vérifier avant de l'exécuter sur vos fichiers.

Qu'est-ce qu'une macro Excel ?

Une macro Excel est un enchaînement d'actions (saisies, clics, mises en forme, calculs) enregistré dans un classeur et que l'on peut rejouer automatiquement, autant de fois que nécessaire, via un bouton ou un raccourci clavier. Microsoft la définit comme une action ou un ensemble d'actions exécutable à volonté, créée en enregistrant vos clics de souris et vos frappes au clavier.

Derrière chaque macro se cache du code écrit en VBA, pour Visual Basic for Applications. Deux façons de l'obtenir :

  • Enregistrer : vous effectuez la tâche une fois, Excel la traduit en code. Aucune connaissance en programmation n'est nécessaire.
  • Programmer : vous écrivez ou modifiez le code dans l'éditeur VBA, pour ajouter ce que l'enregistreur ne sait pas faire (conditions, boucles, messages à l'utilisateur).
Macro ou VBA, quelle différence ? La macro est le résultat (la tâche automatisée), le VBA est le langage dans lequel elle est écrite. On peut créer une macro sans connaître le VBA, mais pas la faire évoluer sérieusement sans en comprendre les bases.

À quoi sert une macro Excel : 8 exemples en entreprise

Une règle simple : si vous refaites la même suite de manipulations au moins une fois par semaine, elle mérite d'être automatisée. Les macros servent surtout à gagner du temps et à supprimer les erreurs de ressaisie. Voici les cas que nous rencontrons le plus souvent chez les TPE et PME que nous formons.

Tâche répétitiveCe que fait la macroQui l'utilise
Nettoyer un export de logicielSupprime les lignes vides, les espaces en trop, harmonise les datesComptabilité, gestion, commerce
Mettre en forme un rapportApplique la charte (couleurs, largeurs, formats de nombres) en un clicAssistanat, direction
Produire le reporting hebdomadaireCopie les nouvelles données, actualise les tableaux croisés et les graphiquesContrôle de gestion, commerce
Consolider plusieurs fichiersOuvre les classeurs d'un dossier et rassemble leurs données dans une seule feuilleMulti-sites, réseaux d'agences
Éclater un tableau par client ou par commercialCrée un onglet ou un fichier par valeur, puis l'enregistreCommerce, RH
Exporter en PDFGénère et nomme automatiquement les PDF (devis, fiches, relevés)Artisans, services administratifs
Fiabiliser une saisieAffiche un formulaire de saisie et refuse les valeurs incohérentesAccueil, logistique, stocks
Archiver chaque moisCopie l'onglet du mois, le renomme, vide la feuille de travailToutes fonctions


Exemple : une assistante de gestion d'une PME de Challans exporte chaque lundi les commandes de la semaine depuis son logiciel. Avant de pouvoir les analyser, elle :

  • supprime les lignes vides et les colonnes inutiles ;
  • corrige les noms de clients saisis avec des espaces en trop ;
  • met en forme l'en-tête et ajuste les colonnes.

Une macro de quelques lignes fait tout cela en un clic, sans oubli. C'est exactement l'exemple de code que nous détaillons plus bas.


Créer sa première macro Excel en 6 étapes, sans coder

La méthode ci-dessous fonctionne sur Excel pour Microsoft 365, Excel 2024, 2021 et 2019, sous Windows comme sur Mac. Prévoyez dix minutes et un fichier de test.

Schéma : le cycle de vie d'une macro

1. Enregistrer
vous faites la tâche une fois
→
2. Traduire
Excel écrit le code VBA
→
3. Stocker
dans un fichier .xlsm
→
4. Rejouer
bouton, raccourci ou liste des macros

↺ Pour aller plus loin, on modifie le code dans l'éditeur VBA : c'est là que la macro devient vraiment sur mesure.

Les 6 étapes

  1. Afficher l'onglet Développeur. Il est masqué par défaut. Sous Windows : Fichier > Options > Personnaliser le ruban, cochez « Développeur ». Sur Mac : Excel > Préférences > Ruban et barre d'outils.
  2. Lancer l'enregistrement. Développeur > Enregistrer une macro. Donnez un nom sans espace (ex. MiseEnFormeRapport), un raccourci clavier si vous le souhaitez, et choisissez où stocker la macro (voir ci-dessous).
  3. Choisir références absolues ou relatives. Par défaut, Excel mémorise les cellules exactes (A1, B2…). Activez Utiliser les références relatives si la macro doit s'appliquer à partir de la cellule sélectionnée, où qu'elle soit.
  4. Faire la tâche, une seule fois, sans hésiter. Chaque clic est enregistré, y compris les erreurs. Préparez votre enchaînement avant de lancer l'enregistrement.
  5. Arrêter l'enregistrement. Développeur > Arrêter l'enregistrement.
  6. Enregistrer le fichier au format .xlsm (« Classeur Excel prenant en charge les macros »). Puis testez : Développeur > Macros, sélectionnez votre macro, Exécuter. Pour un usage quotidien, attribuez-la à un bouton (Insertion > Formes, clic droit, Affecter une macro).

Où stocker la macro : ce classeur ou le classeur de macros personnelles ?

OptionLa macro est disponible…À choisir quand…
Ce classeuruniquement dans ce fichier, y compris pour vos collègues qui l'ouvrentla macro est liée à un fichier précis (un suivi, un tableau de bord)
Classeur de macros personnelles (PERSONAL.XLSB)dans tous les classeurs que vous ouvrez, sur votre ordinateur uniquementla macro est un outil personnel (mise en forme, nettoyage générique)


Le réflexe qui évite les mauvaises surprises : une macro ne s'annule pas avec Ctrl + Z. Ce qu'elle a modifié est modifié. Testez toujours une nouvelle macro sur une copie du fichier, jamais sur l'original.

Lire le code d'une macro : un exemple commenté

Pour voir le code d'une macro enregistrée : Développeur > Macros, sélectionnez-la, puis Modifier (ou Alt + F11 sous Windows pour ouvrir l'éditeur VBA). Voici la macro de l'exemple précédent, écrite proprement. Les lignes qui commencent par une apostrophe sont des commentaires : Excel les ignore, elles servent à expliquer.

Sub NettoyerExport()
    ' Supprime les lignes vides, retire les espaces en trop
    ' et met en forme l'en-tête de la feuille active
    Dim ws As Worksheet
    Dim derniereLigne As Long, i As Long
    Dim cellule As Range

    Set ws = ActiveSheet
    derniereLigne = ws.UsedRange.Row + ws.UsedRange.Rows.Count - 1
    Application.ScreenUpdating = False  ' accélère l'exécution

    ' 1. Supprimer les lignes vides, en partant du bas
    For i = derniereLigne To 2 Step -1
        If Application.WorksheetFunction.CountA(ws.Rows(i)) = 0 Then
            ws.Rows(i).Delete
        End If
    Next i

    ' 2. Retirer les espaces superflus dans les cellules de texte
    For Each cellule In ws.UsedRange
        If Not cellule.HasFormula And VarType(cellule.Value) = vbString Then
            cellule.Value = Trim(cellule.Value)
        End If
    Next cellule

    ' 3. Mettre en forme la ligne d'en-tête et ajuster les colonnes
    With ws.Rows(1)
        .Font.Bold = True
        .Interior.Color = RGB(203, 168, 83)
    End With
    ws.Columns.AutoFit

    Application.ScreenUpdating = True
    MsgBox "Export nettoyé.", vbInformation
End Sub

Les étapes 1 et 2 contiennent une boucle (For … Next) et une condition (If … Then) : c'est précisément ce que l'enregistreur ne sait pas produire, et la raison pour laquelle apprendre les bases du VBA change tout.


Les limites de l'enregistreur de macros

L'enregistreur est la meilleure porte d'entrée, mais il atteint vite ses limites :

  • Il fige les plages de cellules. Votre export fait 200 lignes aujourd'hui et 350 lundi prochain ? La macro enregistrée ne traitera que les 200 premières.
  • Il ne sait pas décider. Pas de « si la cellule est vide, alors… », pas de « pour chaque ligne… ».
  • Il produit un code verbeux, plein de sélections inutiles, plus lent et plus fragile.
  • Il ne gère pas les erreurs. Une feuille renommée, un fichier absent, et la macro s'arrête sur un message incompréhensible pour vos collègues.

La bonne pratique : enregistrer pour obtenir un premier jet, puis retoucher le code. C'est la progression naturelle de l'utilisateur avancé vers l'automatisation.


Macro bloquée : pourquoi et comment la débloquer sans risque

Vous ouvrez un fichier reçu par e-mail et un bandeau rouge « Risque de sécurité » vous informe que les macros ont été bloquées ? C'est normal. Les macros VBA sont un vecteur classique de logiciels malveillants et de rançongiciels : un fichier piégé peut exécuter du code sur votre poste dès qu'on active son contenu. Microsoft a donc changé le comportement par défaut d'Office : les macros des fichiers provenant d'Internet sont bloquées.

Comment Excel sait-il qu'un fichier vient d'Internet ? Windows ajoute au fichier téléchargé ou reçu en pièce jointe une marque invisible, appelée Mark of the Web. Ce blocage ne concerne ni Excel sur Mac, ni Excel pour le web, ni les applications mobiles.

Débloquer un fichier de confiance

  1. Vérifiez la provenance : fichier attendu, expéditeur connu, contenu cohérent. En cas de doute, appelez l'expéditeur.
  2. Fermez le fichier, enregistrez-le sur votre ordinateur.
  3. Clic droit sur le fichier > Propriétés > onglet Général > cochez Débloquer > OK.
  4. Rouvrez le fichier et cliquez sur Activer le contenu.

Pour les fichiers internes que vous utilisez tous les jours, la solution durable est un emplacement approuvé : Fichier > Options > Centre de gestion de la confidentialité > Paramètres > Emplacements approuvés. Dans une entreprise équipée d'un service informatique, ce réglage relève généralement de lui.

La règle d'or : n'activez jamais les macros d'un fichier que vous n'attendiez pas, même s'il semble venir d'un fournisseur ou d'une administration. Une facture « à valider » en .xlsm reçue sans prévenir est un signal d'alerte classique.

Où fonctionnent les macros : Windows, Mac, web

Version d'ExcelMacros VBAOffice Scripts
Excel pour WindowsOui : créer, exécuter, modifierOui, avec une licence Microsoft 365 professionnelle ou éducation éligible
Excel pour MacOui, à quelques fonctions propres à Windows près (contrôles ActiveX notamment)Oui, mêmes conditions de licence
Excel pour le web (navigateur, Teams)Non : le fichier s'ouvre et les macros sont conservées, mais elles ne s'exécutent pasOui
Excel sur smartphone et tabletteNonNon documenté par Microsoft


Conséquence pratique : si votre équipe travaille surtout dans des fichiers partagés ouverts depuis Teams ou le navigateur, une macro VBA ne tournera que pour ceux qui ouvrent le fichier dans l'application de bureau. C'est un critère de choix important, détaillé ci-dessous.


Macro VBA, Office Scripts, Power Query, Copilot : que choisir ?

Les macros VBA ne sont plus le seul moyen d'automatiser Excel. Chaque outil a son terrain de jeu : les confondre, c'est souvent choisir le mauvais.

OutilIdéal pourÀ savoir
Macro VBAAutomatiser des tâches dans un classeur sur ordinateur : mise en forme, boucles, formulaires, export PDF, manipulation de fichiersInclus dans Excel de bureau, sans abonnement supplémentaire. Ne fonctionne pas dans le navigateur. Attention à la sécurité des fichiers échangés
Office ScriptsAutomatiser des fichiers partagés dans OneDrive ou SharePoint, y compris dans le navigateur ; planifier un script avec Power AutomateOnglet « Automatiser ». Enregistreur d'actions sans code, langage TypeScript pour aller plus loin. Licence professionnelle ou éducation requise
Power QueryImporter, nettoyer et combiner des données qui reviennent régulièrement (exports, dossiers de fichiers)Sans code, intégré à Excel (Données > Obtenir des données). Souvent plus robuste qu'une macro pour le nettoyage pur
Copilot dans ExcelDemandes ponctuelles en langage naturel : formules, analyses, mise en forme, tâches en plusieurs étapes avec le mode AgentLicence Copilot requise. Résultat à vérifier à chaque fois : ce n'est pas un traitement figé et rejouable à l'identique comme une macro
Automatisation no-code (Make, Power Automate, Zapier)Faire circuler les données entre applications : formulaire web, CRM, e-mails, Excel, logiciel de facturationHors d'Excel : idéal quand la tâche commence ou se termine ailleurs que dans un classeur


Notre grille de décision, en une ligne par cas :

  • La tâche se fait dans un classeur, sur votre ordinateur, toujours de la même façon → macro VBA.
  • La tâche consiste surtout à récupérer et nettoyer des données → Power Query, éventuellement déclenché par une macro.
  • Le fichier vit dans le cloud et doit tourner dans le navigateur → Office Scripts.
  • La tâche relie plusieurs logiciels → automatisation no-code. Nous y consacrons une formation dédiée à l'automatisation no-code et aux agents IA.
  • La demande est ponctuelle ou exploratoire → Copilot.

Faire écrire ses macros par l'IA : bonne idée ?

Oui, à condition de rester aux commandes. Le VBA existe depuis des décennies et les IA génératives (Copilot, ChatGPT, Claude) en ont vu énormément : elles produisent en quelques secondes un code souvent fonctionnel. L'ICAEW, l'institut des experts-comptables d'Angleterre et du pays de Galles, relevait en avril 2026 que Copilot accélère nettement l'écriture de macros, tout en rappelant que ce code doit être vérifié, surtout lorsqu'il s'insère dans un ensemble de macros existantes dont l'IA ne voit pas toutes les dépendances.

Dans nos accompagnements, nous appliquons quatre règles :

  1. Décrire précisément la tâche : nom des feuilles, colonnes concernées, cas particuliers (cellules vides, doublons). Une demande floue donne un code approximatif. Bien formuler sa demande s'apprend, c'est l'objet de notre formation pour communiquer efficacement avec ChatGPT.
  2. Ne jamais coller de données confidentielles (clients, salaires) dans un outil d'IA grand public : décrivez la structure du fichier, pas son contenu.
  3. Lire le code avant de l'exécuter : une instruction Delete ou Kill mal placée efface des données ou des fichiers, sans retour possible.
  4. Tester sur une copie, puis seulement sur le fichier réel.
Côté entreprise : faire écrire du code par une IA, c'est utiliser un système d'IA au sens du règlement européen. L'article 4 de l'AI Act demande aux employeurs de prendre des mesures pour développer la maîtrise de l'IA de leurs équipes. Le détail dans notre article AI Act et PME : ce qui s'applique déjà.

Le VBA est-il dépassé en 2026 ?

Non. Microsoft continue de faire évoluer le VBA dans Excel pour Windows et Mac, et des millions de classeurs professionnels en dépendent. Mais trois évolutions méritent d'être connues :

  • VBScript disparaît progressivement de Windows. Attention à la confusion : VBScript n'est pas VBA. Seules les macros qui appellent un script .vbs ou utilisent la bibliothèque d'expressions régulières VBScript.RegExp sont concernées. Microsoft prévoit de désactiver VBScript par défaut « vers 2026 ou 2027 », puis de le retirer. Depuis la version 2508 d'Office pour Windows, les expressions régulières sont intégrées directement au VBA : mettre Office à jour et tester ses macros suffit dans la plupart des cas.
  • Office Scripts progresse pour les fichiers partagés dans le cloud, sans remplacer le VBA sur les postes de travail.
  • L'IA écrit du VBA, ce qui rend la compétence plus accessible, mais pas inutile : savoir lire et corriger le code devient la vraie valeur ajoutée.

Notre lecture : en 2026, le VBA reste la solution la plus directe pour automatiser Excel sur un ordinateur. Ce qui change, c'est qu'il faut savoir quand ne pas l'utiliser.


Par où commencer pour apprendre les macros Excel ?

Les macros sont accessibles sans être développeur, mais pas sans bases solides sur Excel. Voici la progression que nous recommandons.

Étape 1 · Maîtriser Excel avancé

Fonctions conditionnelles, tableaux croisés dynamiques, calculs entre plusieurs feuilles. Sans ce socle, on automatise des méthodes fragiles. Notre formation Excel Perfectionnement couvre ce niveau.

Étape 2 · Enregistrer ses premières macros

Choisissez une tâche réelle et répétitive, appliquez les 6 étapes de cet article, attribuez la macro à un bouton.

Étape 3 · Lire et retoucher le code

Ouvrez l'éditeur VBA, repérez les plages de cellules figées, remplacez-les par des plages dynamiques. Comprenez objets, propriétés et méthodes.

Étape 4 · Programmer

Variables, boucles, conditions, gestion des erreurs, formulaires de saisie (UserForm), fonctions personnalisées.

Étape 5 · Fiabiliser et faire reconnaître

Débogage, bonnes pratiques, documentation du code pour vos collègues. Une certification permet ensuite de prouver ce niveau sur un CV.


Automatiser vos propres fichiers Excel, accompagné pas à pas

Chez Brio Formation, organisme certifié Qualiopi basé à Soullans, en Vendée, notre formation Excel Macros VBA suit exactement cette progression : enregistrement des macros, bases du VBA, automatisation, formulaires, débogage. Elle dure 21 heures en individuel, en visio ou en présentiel, et s'appuie sur vos propres fichiers pour que chaque macro créée serve dès le lendemain. Aucune connaissance préalable en VBA n'est requise, mais un niveau avancé sur Excel l'est.

Pas encore à l'aise avec les tableaux croisés dynamiques ? Commencez par choisir votre niveau sur Excel : un test de positionnement gratuit vous oriente.

Écrivez-nous à contact@brioformation.fr ou appelez Justine Brieau, votre conseillère pédagogique, au 06 75 73 79 14.

Questions fréquentes sur les macros Excel

Qu'est-ce qu'une macro Excel, en une phrase ?

C'est une suite d'actions enregistrée dans un classeur et rejouable automatiquement en un clic ou par un raccourci clavier, écrite dans le langage VBA (Visual Basic for Applications).

Faut-il savoir coder pour créer une macro Excel ?

Non pour commencer : l'enregistreur de macros de l'onglet Développeur traduit vos manipulations en code. Oui pour aller plus loin : les boucles, les conditions et la gestion des erreurs demandent de connaître les bases du VBA.

Quelle différence entre une macro et le VBA ?

La macro est la tâche automatisée ; le VBA est le langage de programmation dans lequel elle est écrite. Toute macro Excel de bureau est du code VBA, qu'elle ait été enregistrée ou écrite à la main.

Comment enregistrer un fichier Excel qui contient des macros ?

Au format .xlsm, « Classeur Excel prenant en charge les macros ». Si vous enregistrez au format .xlsx, Excel vous prévient que les macros seront supprimées.

Pourquoi mes macros sont-elles bloquées ?

Parce que le fichier provient d'Internet ou d'un e-mail : sous Windows, Office bloque par défaut les macros de ces fichiers pour protéger contre les logiciels malveillants. Si vous faites confiance à la source, enregistrez le fichier, ouvrez ses propriétés, cochez « Débloquer », puis rouvrez-le.

Les macros fonctionnent-elles sur Mac et dans Excel en ligne ?

Sur Mac, oui, à quelques fonctions propres à Windows près. Dans Excel pour le web, non : le fichier s'ouvre et les macros sont conservées, mais elles ne s'exécutent pas. L'alternative dans le navigateur s'appelle Office Scripts.

Peut-on annuler une macro avec Ctrl + Z ?

Non. Les modifications faites par une macro ne s'annulent pas avec Ctrl + Z. Testez toujours une nouvelle macro sur une copie du fichier.

Une macro Excel peut-elle contenir un virus ?

Oui. Le VBA peut agir sur votre ordinateur au-delà du classeur, ce qui en fait un vecteur connu de logiciels malveillants. N'activez jamais les macros d'un fichier que vous n'attendiez pas, même s'il paraît venir d'un contact connu.

ChatGPT ou Copilot peuvent-ils écrire une macro à ma place ?

Oui, ils génèrent du code VBA souvent fonctionnel à partir d'une description précise. Il faut néanmoins savoir lire ce code pour le vérifier, ne pas y coller de données confidentielles, et le tester sur une copie avant de l'utiliser sur vos fichiers.

Le VBA va-t-il disparaître ?

Rien ne l'annonce. C'est VBScript, un autre langage, que Microsoft retire progressivement de Windows, avec une désactivation par défaut prévue vers 2026 ou 2027. Seules les macros qui s'appuient sur VBScript sont concernées ; depuis la version 2508 d'Office, les expressions régulières sont intégrées au VBA.

Combien de temps faut-il pour apprendre les macros Excel ?

Une heure suffit pour enregistrer et exécuter ses premières macros. Programmer en VBA de façon autonome demande davantage : notre parcours certifiant y consacre 21 heures, à partir d'un bon niveau sur Excel.

Peut-on se former aux macros Excel avec le CPF ?

Oui, si la formation prépare à une certification enregistrée, comme le TOSA® VBA (RS6963). Le CPF finance au maximum 1 500 € pour une certification du Répertoire spécifique, et une participation forfaitaire de 150 € s'applique, sauf exonération. Les règles évoluent : consultez notre point sur la réforme du CPF avant de vous inscrire.

Sources

Cet article a une vocation informative. Les fonctionnalités d'Excel varient selon votre version et votre licence Microsoft 365 : vérifiez toujours sur la documentation officielle de Microsoft. Dernière vérification des sources : 9 octobre 2026.

Chers utilisateurs, ce site stocke les cookies sur votre ordinateur.
Ils ont pour but d'améliorer l’expérience de votre site Web, tout en vous fournissant des services plus personnalisés. Les cookies sont également utilisés pour la personnalisation des publicités. Si vous souhaitez plus d’informations sur les cookies que nous utilisons, veuillez consulter notre Politique de confidentialité. En acceptant les cookies, vous consentez à leur utilisation. Vous pouvez également paramétrer ces derniers. Si vous refusez, vos informations ne seront pas suivies, au moment de visiter ce site. Un seul cookie sera utilisé dans votre navigateur pour mémoriser votre préférence de ne pas être suivi.
Paramètres cookies