Formations
Ressources
Blog À propos Masterclass gratuite →
Blog

Apprendre le VBA Excel : le guide complet, de zéro aux UserForms

Publié le 14 juillet 2026 · 12 min de lecture

Tu passes tes journées à répéter les mêmes manipulations dans Excel : copier, coller, mettre en forme, filtrer, refaire le même tableau chaque semaine. Chacune de ces tâches prend quelques minutes, et mises bout à bout, elles mangent des heures. Le VBA existe précisément pour ça : apprendre à ta feuille à faire le travail à ta place.

Le VBA (Visual Basic for Applications) est le langage de programmation intégré à Excel qui permet d'automatiser des tâches, de créer des outils sur mesure et de faire en un clic ce qui te prend d'ordinaire une demi-heure. Et bonne nouvelle : on ne part pas de la théorie informatique, on part de tes vrais besoins Excel.

Ce guide est un parcours complet, de la toute première ligne de code jusqu'aux interfaces (les UserForms). Tu n'as besoin d'aucune base en programmation. Si Excel lui-même est encore récent pour toi, garde à portée le guide Excel débutant avant de te lancer.

✅ Ce que tu sauras faire après ce guide
  • Ouvrir l'éditeur VBA et écrire ta première macro
  • Lire et comprendre n'importe quel code Excel
  • Utiliser variables, conditions et boucles
  • Manipuler cellules et plages en code
  • Créer tes propres fonctions Excel
  • Gérer les erreurs proprement
  • Construire une interface avec un UserForm

Le VBA, c'est quoi exactement

Le VBA est le langage qui vit à l'intérieur d'Excel (et des autres logiciels Office). Chaque fois que tu cliques quelque part dans Excel, en coulisses, une instruction VBA pourrait faire la même chose. Écrire du VBA, c'est donner à Excel une liste d'instructions qu'il exécute tout seul, dans l'ordre, sans erreur et sans fatigue.

On confond souvent macro et VBA. Une macro, c'est une suite d'actions enregistrées ou programmées ; le VBA, c'est le langage dans lequel cette macro est écrite. Enregistrer une macro génère automatiquement du code VBA, que tu peux ensuite lire et améliorer. C'est d'ailleurs la meilleure porte d'entrée, et on commence par là.

🗺️ Ton parcours VBA en 10 étapes
  1. L'éditeur VBA : ouvrir l'atelier où tu vas coder
  2. Ta première macro : la faire écrire par Excel, sans coder
  3. Lire le code : objets, propriétés, méthodes
  4. Les variables : stocker et réutiliser une information
  5. Cellules et plages : Range et Cells
  6. Les conditions : réagir selon les cas (If, Select Case)
  7. Les boucles : répéter sans se répéter (For, For Each)
  8. Procédures et fonctions : ranger et réutiliser ton code
  9. La gestion des erreurs : un code qui ne plante pas
  10. Les UserForms : créer une vraie interface

Pourquoi apprendre le VBA en 2026

On entend que l'IA et Python vont remplacer le VBA. La réalité est plus simple : le VBA est installé sur des centaines de millions de postes, il tourne sans rien à configurer, et il pilote Excel mieux que n'importe quel outil externe. L'IA t'aide d'ailleurs à écrire du VBA plus vite (on y revient à la fin), mais encore faut-il savoir lire et corriger ce qu'elle produit. Apprendre le VBA, c'est gagner en autonomie, pas s'attacher à une technologie du passé.

Étape 1 : ouvrir l'éditeur VBA

Tout se passe dans un espace dédié : l'éditeur VBA, aussi appelé VBE. Pour y accéder, active d'abord l'onglet Développeur (Fichier, Options, Personnaliser le ruban, coche Développeur), puis appuie sur Alt + F11. Tu peux aussi cliquer sur Visual Basic dans l'onglet Développeur.

Dans l'éditeur, insère un module (menu Insertion, Module) : c'est la feuille blanche où ton code va vivre. Écris ceci, puis appuie sur F5 pour l'exécuter.

Sub MonPremierCode()
    MsgBox "Bonjour depuis VBA !"
End Sub

Une boîte de message s'affiche. Bravo, tu viens d'exécuter ton premier programme. Tout code VBA vit entre Sub et End Sub : c'est une procédure, un bloc d'instructions qui porte un nom.

Étape 2 : ta première macro sans écrire une ligne

La façon la plus rapide de produire du VBA, c'est de laisser Excel l'écrire pour toi. Dans l'onglet Développeur, clique sur Enregistrer une macro, fais quelques manipulations (mets une cellule en gras, change une couleur), puis arrête l'enregistrement. Retourne dans l'éditeur : Excel a traduit tes clics en code.

Sub Macro1()
    Range("A1").Font.Bold = True
    Range("A1").Interior.Color = vbYellow
End Sub

L'enregistreur est un professeur formidable : tu fais l'action, tu lis le code qu'elle produit, tu apprends le vocabulaire. Pour t'entraîner pas à pas sur cette méthode, suis le tuto créer une macro Excel pour débuter (sans coder).

Étape 3 : lire le code (objets, propriétés, méthodes)

Le VBA repose sur une logique simple : tu agis sur des objets (une cellule, une feuille, un classeur), en modifiant leurs propriétés ou en appelant leurs méthodes. La syntaxe se lit de gauche à droite, séparée par des points.

Range("A1").Value = "Total"      ' on change une PROPRIÉTÉ (la valeur)
Range("A1").Font.Bold = True     ' une propriété imbriquée (le gras)
Range("A1:A10").ClearContents    ' on appelle une MÉTHODE (vider)

Une propriété, c'est une caractéristique que tu lis ou modifies (la valeur, la couleur, le gras). Une méthode, c'est une action que l'objet sait faire (vider, copier, supprimer). Une fois que tu vois le monde d'Excel comme des objets avec des propriétés et des méthodes, tout le reste devient logique.

Étape 4 : les variables

Une variable est une boîte étiquetée qui garde une information pour la réutiliser. On la déclare avec Dim, en précisant son type : du texte (String), un nombre entier (Integer), un nombre à décimales (Double).

Sub Bonjour()
    Dim prenom As String
    Dim age As Integer
    prenom = Range("A1").Value
    age = Range("A2").Value
    MsgBox prenom & " a " & age & " ans"
End Sub
💡 Écris Option Explicit en haut de tes modules
Cette petite ligne force à déclarer chaque variable. Résultat : la moindre faute de frappe dans un nom de variable est signalée tout de suite, au lieu de créer un bug silencieux que tu chercheras pendant des heures. C'est le réflexe numéro un des développeurs propres.

Étape 5 : manipuler cellules et plages

Deux façons de désigner une cellule : Range (par son adresse) et Cells (par ses numéros de ligne et colonne). Cells est parfait dans les boucles, car les numéros sont faciles à faire varier.

Range("B2").Value = 100
Cells(2, 3).Value = "OK"          ' ligne 2, colonne 3 = C2
Range("A1").Offset(1, 0).Value = "juste en dessous"

Étape 6 : les conditions

Une condition permet à ton code de réagir selon les cas. La structure If est la plus courante.

If Range("A1").Value > 100 Then
    Range("B1").Value = "Élevé"
ElseIf Range("A1").Value > 50 Then
    Range("B1").Value = "Moyen"
Else
    Range("B1").Value = "Faible"
End If

Quand tu dois tester une même valeur contre beaucoup de cas, Select Case est plus lisible qu'une longue chaîne de ElseIf.

Étape 7 : les boucles

La boucle est le vrai super-pouvoir du VBA : elle répète une action des centaines de fois sans effort. La boucle For répète un nombre connu de fois.

Dim i As Integer
For i = 1 To 10
    Cells(i, 1).Value = i * 2      ' remplit A1 à A10
Next i

La boucle For Each parcourt directement un ensemble d'objets, par exemple toutes les cellules d'une plage, sans avoir à compter.

Dim cel As Range
For Each cel In Range("A1:A10")
    cel.Value = cel.Value * 1.2    ' +20% sur chaque cellule
Next cel

Étape 8 : procédures et fonctions

Jusqu'ici tu écris des Sub (des procédures qui agissent). Le VBA permet aussi de créer tes propres Function, des fonctions qui renvoient un résultat et que tu peux utiliser dans une cellule, exactement comme SOMME ou RECHERCHEX.

Function TVA(montantHT As Double) As Double
    TVA = montantHT * 0.2
End Function

Une fois cette fonction dans un module, tape =TVA(A1) dans une cellule : tu viens d'ajouter ta propre formule à Excel. C'est là que le VBA devient réellement puissant.

Étape 9 : gérer les erreurs

Un code qui plante à la moindre imprévu fait fuir les utilisateurs. La gestion d'erreur permet de reprendre la main proprement quand quelque chose se passe mal.

Sub DivisionSure()
    On Error GoTo Probleme
    MsgBox 100 / Range("A1").Value
    Exit Sub
Probleme:
    MsgBox "Erreur : " & Err.Description
End Sub

La ligne On Error GoTo renvoie vers une étiquette dédiée dès qu'un problème survient, au lieu de laisser Excel afficher un message d'erreur brutal.

Étape 10 : les UserForms

Le UserForm est l'aboutissement : une vraie fenêtre, avec des champs de saisie et des boutons, que tu conçois toi-même. C'est ce qui transforme un fichier Excel en application. Depuis l'éditeur, fais Insertion, UserForm, puis dépose des contrôles (une zone de texte, un bouton) depuis la boîte à outils.

Chaque contrôle réagit à des événements. Le code ci-dessous s'exécute quand on clique sur le bouton de validation : il recopie le contenu du champ dans la feuille, puis ferme la fenêtre.

Private Sub btnValider_Click()
    Range("A1").Value = txtNom.Value
    Unload Me
End Sub

Avec les UserForms, tu offres à tes collègues une interface claire : ils remplissent des cases, cliquent sur un bouton, et ton code fait le reste. Plus personne ne touche directement aux formules.

Combien de temps pour apprendre le VBA

Les bases, celles qui couvrent 80% de tes besoins (macros, variables, boucles, conditions), s'acquièrent en quelques heures de pratique guidée. L'autonomie réelle, celle où tu écris un outil sans modèle sous les yeux, vient après quelques semaines à coder un peu chaque jour sur tes propres fichiers. La clé n'est pas de tout retenir, mais de pratiquer sur des cas concrets qui te servent vraiment.

⚠️ Les erreurs de débutant à éviter
Trois pièges reviennent tout le temps : abuser de .Select et .Activate (l'enregistreur en met partout, mais ton code sera plus rapide et plus fiable en agissant directement sur les objets) ; oublier Option Explicit ; et ne jamais gérer les erreurs. Corrige ces trois réflexes tôt, et ton code passera d'amateur à propre.

Aller plus loin

Tu as maintenant la carte complète du territoire VBA. La suite, c'est la pratique. Commence par enregistrer tes premières macros pour te familiariser avec le code, puis découvre comment écrire du VBA avec l'IA pour aller beaucoup plus vite tout en gardant le contrôle. Et si tu veux un parcours structuré, du premier code jusqu'aux applications complètes, avec un formateur et des exercices corrigés, la formation La magie du VBA te prend par la main de zéro à autonome.

Questions fréquentes

C'est quoi le VBA dans Excel ?

Le VBA (Visual Basic for Applications) est le langage de programmation intégré à Excel. Il permet d'automatiser des tâches répétitives, de créer des fonctions sur mesure et de construire des outils avec interface (UserForms). C'est ce langage qui se cache derrière les macros.

Faut-il savoir coder pour apprendre le VBA ?

Non. On commence en enregistrant des macros, ce qui génère du code automatiquement, puis on apprend à le lire et à le modifier. Aucune base en programmation n'est nécessaire : il suffit de connaître les manipulations Excel de base et de pratiquer sur ses propres fichiers.

Combien de temps faut-il pour apprendre le VBA Excel ?

Les bases utiles au quotidien (macros, variables, boucles, conditions) s'acquièrent en quelques heures de pratique guidée. L'autonomie réelle, celle où l'on écrit un outil de zéro, vient après quelques semaines à coder un peu chaque jour sur des cas concrets.

Quelle est la différence entre une macro et le VBA ?

Une macro est une suite d'actions automatisées ; le VBA est le langage dans lequel cette macro est écrite. Enregistrer une macro produit automatiquement du code VBA, que l'on peut ensuite lire, corriger et améliorer. Le VBA est donc le moteur, la macro le résultat.

Le VBA fonctionne-t-il sur Excel pour Mac ?

Oui, l'éditeur VBA et les macros existent sur Excel pour Mac (Alt + F11 ou Option + F11). Quelques différences subsistent, notamment sur les contrôles ActiveX et certaines boîtes de dialogue, mais l'essentiel du langage (variables, boucles, Range, fonctions) fonctionne de la même façon.

Le VBA est-il encore utile en 2026 avec l'IA ?

Oui, plus que jamais de façon pratique. Le VBA est installé partout et pilote Excel sans configuration. L'IA aide à écrire du code VBA beaucoup plus vite, mais il faut savoir le lire et le corriger pour l'utiliser sans risque. Apprendre le VBA reste le meilleur moyen d'automatiser Excel en autonomie.

À lire ensuite

Envie de vraiment maîtriser Excel ?

Rejoins la masterclass gratuite : la méthode complète, en direct.

Je rejoins la masterclass gratuite →