L’automatisation Excel VBA est déjà dans ton Excel de bureau. Il suffit de savoir où la trouver.
Le code et l’onglet Développeur caché font peur. Pourtant, tes premiers pas se font sans savoir coder.
Automatiser Excel avec VBA : tes premières macros sans te noyer dans le code
Tu passes ton lundi matin à mettre en forme le même suivi commercial que la semaine dernière. Les mêmes couleurs, les mêmes colonnes, les mêmes clics.
Ce travail répétitif te prend du temps. Il te laisse peu de place pour l’analyse. Une macro peut le faire à ta place, en quelques secondes.
Ce que VBA sait faire à ta place
Une macro est une suite d’actions qu’Excel rejoue sur commande. Elle peut :
- remplir une colonne,
- appliquer un format,
- trier un tableau,
- importer des données.
VBA est le langage qui se cache derrière, intégré aux versions de bureau d’Excel.
Prends le reporting reçu chaque semaine. La macro ouvre le fichier. Elle applique les formats. Elle prépare une présentation identique à chaque fois.
Tu gagnes du temps, et surtout tu évites les oublis.
Pas besoin de savoir coder pour commencer. L’enregistreur de macros mémorise les actions que tu fais dans Excel. Tu fais l’action une fois, puis tu peux demander à Excel de la rejouer.
Une macro enregistrée se retouche ensuite dans l’éditeur Visual Basic. Tu peux supprimer une étape inutile. Tu peux remplacer une plage fixe par une plage qui s’adapte aux données. Tu peux aussi ajouter une condition.
Lire le code avant de le modifier
Pour voir ce qu’Excel a écrit à ta place, ouvre l’onglet Développeur, puis Macros, puis Modifier. Tu découvres les instructions générées pendant ton enregistrement.
Une macro enregistrée convient à une séquence stable, par exemple pour appliquer un format à une zone fixe. Si la taille de la zone change, il faut adapter le code.
Elle se met à déraper dès que le nombre de lignes change, que des cellules restent vides ou qu’une décision dépend du contenu.
C’est là que tu ajoutes une condition If…Then, une boucle For…Next ou une recherche de la dernière ligne remplie. Tu adaptes ainsi la macro aux données, au lieu de répéter une suite de clics.
Enregistrer et lancer ta première macro
Afficher l’onglet Développeur
L’onglet Développeur est masqué par défaut. Pour l’afficher :
- Sous Windows, va dans Fichier, Options, Personnaliser le ruban, puis coche Développeur.
- Sur Mac, va dans Excel, Préférences, Ruban et barre d’outils, puis coche le même onglet.
Choisir où ranger la macro
Tu as deux choix pour ranger ta macro :
- Ce classeur : la macro ne sert qu’au fichier ouvert.
- Classeur de macros personnelles : tu la retrouves dans tous tes classeurs. Excel la garde dans un fichier personnel masqué.
Clique sur OK, fais uniquement les actions à automatiser, puis sélectionne Arrêter l’enregistrement. Pour relancer la macro, ouvre Développeur, choisis son nom dans Macros et clique sur Exécuter.
Enregistrer le fichier au bon format
Un classeur qui contient du VBA doit être enregistré au format .xlsm. Le format .xlsx, celui que tu utilises d’habitude, ne conserve pas le code VBA.

Travaille sur une copie et teste ta macro sur un petit jeu de données de contrôle, sans enjeu, avant de l’utiliser sur tes vrais fichiers.
Une macro exécutée ne se défait pas avec la commande Annuler habituelle d’Excel. Garde toujours une sauvegarde.
Adapter le code à tes données
Avant d’écrire la moindre ligne, note trois choses :
- le fichier de départ et les colonnes concernées,
- la règle à appliquer et le résultat attendu,
- le cas particulier qui doit arrêter l’automatisation.
Une boucle qui s’adapte aux lignes
Pour traiter plusieurs lignes, une boucle lit chaque ligne, vérifie la condition et applique l’action prévue. Elle s’arrête à la dernière ligne remplie dans la colonne choisie, plutôt qu’à un numéro fixé une fois pour toutes.
Sub SignalerRetards() Dim derniereLigne As Long Dim ligne As Long derniereLigne = Cells(Rows.Count, 3).End(xlUp).Row For ligne = 2 To derniereLigne If Cells(ligne, 3).Value = « En retard » Then Cells(ligne, 4).Value = « À relancer » Cells(ligne, 3).Interior.Color = vbYellow End If Next ligne End Sub
Teste par étapes
Commence par un petit jeu de données de contrôle. Prends une ligne conforme, une ligne qui déclenche la règle, une cellule vide et une valeur inattendue. Si tout se passe bien, élargis progressivement.
Vérifie aussi ce qui se passe quand tu ajoutes des lignes. Une macro enregistrée sur une plage fixe ne les prendra pas en compte.
Si ta macro écrit sur des lignes figées, elle ne voit pas celles que tu ajoutes plus tard. Relance le test après chaque ajout, et garde la recherche de la dernière ligne.
VBA ou Office Scripts : lequel choisir ?
VBA sert surtout à automatiser des tâches dans Excel de bureau, sur Windows ou Mac. Tu peux aussi l’utiliser pour faire dialoguer Excel avec d’autres applications Office.
Excel pour le web n’exécute pas les macros VBA. Si tes collègues travaillent dans le navigateur, vérifie cela avant de bâtir ton processus.
| Critère | VBA | Office Scripts |
|---|---|---|
| Environnement principal | Excel de bureau sous Windows ou Mac | Excel pour le web et Microsoft 365 |
| Création | Enregistreur de macros et langage VBA | Enregistreur d’actions et JavaScript |
| Lancement | Utilisateur, bouton, raccourci ou événement Excel | Utilisateur ou flux Power Automate |
| Accès à l’ordinateur | Large, selon les autorisations d’Excel | Limité au classeur, dans une logique cloud |
Une macro VBA a les mêmes droits qu’Excel. Elle peut donc toucher aux fichiers de l’ordinateur. Ton entreprise doit encadrer les classeurs à macros qui circulent par mail ou sur un espace partagé.
Avant de choisir
- Demande à tes collègues où ils ouvrent leurs classeurs : sur le bureau ou dans le navigateur.
- Renseigne-toi auprès de ton service informatique sur les macros autorisées dans l’entreprise.
- Note qui doit pouvoir lancer ta macro et sur quels fichiers.
Si tu veux aller plus loin, une formation aide à lire le code, à construire une boucle et à gérer les erreurs.
Formaestro propose une formation Excel VBA de deux jours. Elle se fait en présentiel ou à distance. Il existe aussi des parcours bureautiques.
Choisis la tâche qui te prend le plus de temps chaque semaine, celle que tu refais à l’identique. Enregistre-la une première fois sur une copie du fichier, puis relis le code qu’Excel a écrit. Ce premier essai te montre vite ce qu’une macro peut faire à ta place.
Foire aux questions
Comment automatiser un calcul dans Excel ?
Pour un calcul qui dépend seulement des valeurs de la feuille, une formule suffit. Tu n’as pas besoin d’une macro pour ce calcul seul.
Passe à une macro quand il faut appliquer le calcul à de nombreuses lignes, dans plusieurs fichiers, avec une mise en forme ou une autre action.
Quel logiciel utiliser pour automatiser des calculs dans un tableau ?
Pour automatiser des calculs, contrôles et mises en forme dans Excel, tu peux utiliser des formules, Power Query ou VBA.
Si le tableau doit être traité en ligne et lancé automatiquement, Office Scripts avec Power Automate peut mieux convenir.
Quel exercice Excel convient à un débutant ?
Crée un tableau de suivi avec une colonne Statut, puis enregistre une macro qui colore la ligne quand le statut change.
Avec cet exercice, tu pratiques l’enregistrement et l’exécution d’une macro sur un fichier sans enjeu.