C'est quoi le VBA dans Excel ?
Le VBA est le langage de programmation intégré à Excel et aux autres applications Office. Il pilote directement les objets d'un classeur, ses feuilles, ses plages et ses cellules, à travers des instructions regroupées dans des macros. On l'écrit dans l'éditeur Visual Basic, une fenêtre distincte de la grille qu'on ouvre avec le raccourci Alt+F11.

À quoi sert le VBA (Visual Basic) dans Excel
Le VBA sert à automatiser dans Excel tout ce qu'aucune formule ne sait faire, parce qu'il agit sur le classeur lui-même et non sur le contenu d'une cellule. Une formule se contente de calculer une valeur, là où une procédure VBA ouvre un fichier, met en forme un tableau ou enchaîne une longue série de gestes en une seule commande.
Ce que le langage apporte en plus, c'est la décision et la répétition. Un programme VBA teste une condition avant d'agir, parcourt des centaines de lignes sans intervention de ta part, et s'adapte à des données dont la forme change d'un fichier à l'autre. C'est précisément ce qui le sépare d'un raccourci clavier ou d'une mise en forme conditionnelle.
Sa portée dépasse d'ailleurs le tableur. Le même langage pilote Word, Outlook ou Access, si bien qu'une procédure lancée depuis Excel prépare un message et l'envoie sans que tu changes d'application. De retour dans la feuille, tu peux aussi écrire tes propres fonctions, appelées dans une cellule au même titre que SOMME ou RECHERCHEV.
Comment écrire sa première macro VBA dans Excel
Le VBA te laisse programmer tes propres macros au lieu de te contenter de l'enregistreur. Voici comment ouvrir l'éditeur, créer un module et lancer une petite procédure qui affiche un message, pour te familiariser avec le langage.
- 1Appuie sur Alt+F11 pour ouvrir l'éditeur Visual Basic, la fenêtre séparée où s'écrit tout le code VBA de ton classeur.
- 2Dans le menu Insertion puis Module, crée un module vierge, c'est le fichier de code dans lequel tu vas taper ta procédure.
- 3Écris une procédure simple, par exemple Sub Bonjour() sur la première ligne, puis MsgBox "Salut" en dessous, puis End Sub pour fermer la procédure.
- 4Appuie sur F5 (ou clique sur le bouton Exécuter) pour lancer la macro, une boîte de dialogue affiche alors ton message. Reviens sur Excel avec Alt+F11.
- 5Enregistre le classeur au format prenant en charge les macros pour conserver ton code, sinon Excel efface le VBA à la fermeture.
Pour aller plus loin
Termes liés : Macro, Enregistreur de macros, Power Query, Formulaire utilisateur, Contrôle Microsoft Excel
Questions fréquentes sur le VBA
Le raccourci le plus rapide est Alt+F11, qui ouvre directement l'éditeur Visual Basic. Tu peux aussi y accéder via l'onglet Développeur (s'il est visible) en cliquant sur Visual Basic. Si l'onglet Développeur n'apparaît pas dans ton ruban, active-le dans Fichier > Options > Personnaliser le ruban, puis coche la case Développeur.
Le VBA et Power Query ne servent pas à la même chose, et le bon réflexe est de les combiner. Power Query importe et transforme des données sans une ligne de code, puis rejoue ses étapes à chaque actualisation. Le VBA, lui, pilote Excel en profondeur, ouvre des fichiers locaux ou déclenche une action à un événement précis. Garde donc Power Query pour préparer les données et le VBA pour automatiser des gestes que l'interface ne propose pas. Sur Excel dans le navigateur, où le VBA ne tourne pas, c'est Office Scripts qui prend le relais.
Non. VBA est un langage conçu pour des non-développeurs qui veulent automatiser des tâches répétitives. Le meilleur point de départ est l'enregistreur de macros : tu enregistres une action, tu regardes le code généré dans l'éditeur VBA, et tu commences à comprendre la logique des objets Excel (Workbooks, Worksheets, Range...). Avec quelques heures de pratique, tu peux écrire des macros utiles qui font gagner des heures chaque semaine.
Une macro, c'est le résultat final : une séquence d'actions automatisées que tu déclenches en un clic. L'enregistreur de macros permet d'en créer une sans coder, mais le résultat est rigide : il reproduit exactement ce que tu as fait, sur les mêmes cellules, dans le même ordre. Dès que les données changent de forme, la macro peut échouer ou donner des résultats faux.
VBA est le langage dans lequel toutes les macros sont écrites. En écrivant du VBA directement, tu peux créer des automatisations qui s'adaptent aux données, prennent des décisions selon des conditions, traitent des données en boucle et gèrent les erreurs. La macro créée par l'enregistreur est du VBA basique et statique ; le VBA écrit à la main est du VBA intelligent. Si tu fais de l'automatisation sérieuse, apprendre VBA vaut largement l'investissement.
Du mot à la pratique
Tu sais maintenant ce que le mot veut dire. Reste à s’en servir : la formule, le fichier, et le cours qui remet tout dans l’ordre.
Tout le lexiqueDes modèles Excel prêts à télécharger

Toutes les formules Excel, expliquées

Tout le cours Excel en PDF



