4.4Macros & programmation VBA
Quand une tâche se répète chaque semaine — mise en forme, tri, export — Excel peut la faire à votre place. L'enregistreur de macros capture vos gestes et les rejoue à l'identique ; le code généré est du VBA (Visual Basic for Applications), que vous pouvez ensuite lire et adapter dans l'éditeur (Alt + F11).
Vous découvrirez la structure d'une macro (Sub … End Sub), les variables, la boucle For et la condition If — le socle minimal pour automatiser utilement. À noter : Microsoft pousse désormais les scripts Office (TypeScript) pour le web, mais le VBA reste omniprésent en entreprise et incontournable sur les fichiers existants.
Vocabulaire de la section
- Macro
- Suite d'actions enregistrée puis rejouable (Affichage → Macros, ou onglet Développeur). Stockée en VBA.
- VBA
- Le langage de programmation intégré à Office. Éditeur : Alt + F11. Une macro = une procédure Sub … End Sub.
- .xlsm
- Format de classeur AVEC macros. Un .xlsx ne peut pas en contenir : Excel vous proposera de convertir à l'enregistrement.
- Références relatives (enregistreur)
- Option de l'enregistreur : les gestes sont enregistrés par rapport à la cellule active, pas en positions absolues.
- Sécurité des macros
- Les macros peuvent contenir du code malveillant : Excel les bloque par défaut sur les fichiers téléchargés — ne les activez que si la source est de confiance.
Que renvoie =UNIQUE(A2:A100) dans Excel 365 ?
En pratique — Votre première macro : mise en forme en un clic
- Onglet Affichage → Macros → Enregistrer une macro : nommez-la MiseEnFormeTitres, raccourci Ctrl+Maj+M.
- Pendant l'enregistrement : mettez la ligne 1 en gras, fond vert foncé, texte blanc, puis figez les volets (ligne 1). Arrêtez l'enregistrement.
- Ouvrez Alt + F11 : lisez le code généré dans Module1 — reconnaissez vos gestes ligne par ligne.
- Sur une autre feuille brute, tapez Ctrl+Maj+M : toute la mise en forme s'applique instantanément. Enregistrez en .xlsm.
Points clés à retenir
- L'enregistreur de macros écrit le code VBA à votre place : le meilleur moyen d'apprendre en lisant.
- Un fichier avec macros s'enregistre en .xlsm — jamais en .xlsx.
- Le trio de base du VBA : variables (Dim), boucles (For … Next), conditions (If … Then).
- Prudence : n'activez jamais les macros d'un fichier dont vous ne connaissez pas la provenance.
Questions fréquentes
L'onglet Développeur n'apparaît pas, comment l'afficher ?
Fichier → Options → Personnaliser le ruban → cochez « Développeur » dans la colonne de droite. Il donne accès à l'éditeur, aux contrôles et aux options de macros.
Faut-il encore apprendre le VBA en 2026 ?
Pour maintenir l'existant en entreprise : oui, c'est partout. Pour du neuf : évaluez d'abord Power Query (nettoyage), les formules dynamiques et les scripts Office — le VBA reste roi pour l'automatisation locale poussée.