💻 Cours de programmation en VBA 📊

📊 Programmation en VBA

VBA signifie Visual Basic for Applications. C'est le langage intégré à Microsoft Office (Excel, Word, Access…) qui permet d'automatiser des tâches, créer des macros et développer des outils personnalisés.

Un document contenant des scripts en VBA doit être enregistré au format Classeur Excel (prenant en charge les macros) (format .xlsm).

Pour commencer à utiliser VBA dans Excel, il est nécessaire d'activer l'onglet Développeur :

Une fois l'onglet Développeur visible, vous pouvez accéder à l'éditeur VBA :

La vue ci-dessous vous montre comment se présente votre interface Virtual Basic avec:

Les projets VBA

Un VBAProject est l'objet regroupant les différents éléments d'un fichier Excel. Il est généralement composé de:

Les modules VBA

Un module est un conteneur de code qui permet de regrouper des macros (subroutines) et des fonctions. C’est l’endroit principal où l’on écrit le code VBA destiné à être exécuté manuellement ou appelé depuis d’autres procédures.

Pour créer un module :

Les subroutines et fonctions écrites dans un module sont accessibles depuis :

Exemple simple d'une macro VBA


Sub Test()
    MsgBox "Bonjour"
End Sub

Cette macro, placée dans un module, va afficher une fenêtre avec le message "Bonjour" lorsqu’elle est exécutée.

Pourquoi écrire le code dans des modules et non dans Feuil ou ThisWorkbook ?

Dans un projet VBA, on trouve plusieurs types d’objets :

Les objets FeuilX et ThisWorkbook sont principalement destinés à contenir du code événementiel. Ce sont des procédures qui se déclenchent automatiquement suite à une action précise.

Exemples d’événements :

À l’inverse, les modules standards servent à :

Bonne pratique :

De plus, les macros placées dans un module sont directement visibles dans la liste des macros Excel, ce qui n’est pas le cas pour celles écrites dans Feuil ou ThisWorkbook.