L’environnement de développement VBA
Sommaire
- 1- Objectifs
- 2- Présentation
- 3- L'environnement VBE
- 3.1- Accès à l’environnement VBE
- 3.2- L'explorateur de projets
- 3.3- L'explorateur d'objets
- 3.4- La fenêtre de code
- 3.5- La fenêtre UserForm (ou Interface) et la boîte à outils
- 3.6- La fenêtre Propriétés
- 4- Les Projets VBA
- 4.1- Objets Microsoft Excel
- 4.2- Feuilles
- 4.3- Modules
- 4.4- Modules de classe
- 4.4.1- Sommaire du cours Excel
L’environnement de développement VBA
-
Objectifs
- Connaitre l’environnement VBA
- Découvrir l’éditeur de VBA sous Excel 2016
-
Présentation
- Visual Basic Application (VBA) est un langage orienté objet qui est présent dans l’intégralité de la suite Office de Microsoft.
- Ce langage de développement permet en plus de gérer plusieurs événements ayant cours au sein des programmes de la suite Office, en plus d’au sein du code VBA étant exécuté.
- VBA (pour Visual Basic for Application) est un langage de programmation puissant qui permet d’automatiser des traitements avec les logiciels de la suite Office de Microsoft (EXCEL, ACCESS, WORD…), d’ajouter de nouvelles fonctions à ces logiciels et même de transférer des données d’une application à l’autre (publipostage Word à partir de données Excel ou ACCESS…).
- EXCEL VBA (Visual Basic pour Application) est un langage de programmation permettant d’utiliser du code Visual Basic pour exécuter les nombreuses fonctionnalités de l’Application EXCEL.
- Visual Basic pour Applications est le langage de programmation des applications de Microsoft Office.
- VBA permet d’automatiser les tâches, de créer des applications complètes, de sécuriser vos saisies et vos documents, de créer de nouveaux menus et de nouvelles fonctions pour booster efficacement votre logiciel.
- Une application réalisée en VBA est complètement liée au logiciel sous lequel elle a été créée (une application VBA créée sous Excel ne pourra pas se lancer sur un poste si Excel n’est pas installé).
-
L’environnement VBE
- La suite Office offre à ses usagers un environnement de développement connu sous le nom d’éditeur Visual Basic (Visual Basic Editor).
- VBE (Visual Basic Editor), est l’environnement dans lequel vous pouvez saisir, modifier et tester votre code VBA. Cet environnement est également appelé IDE (Integrated Development Environment) ou éditeur VBA.
- L’environnement VBE met à votre disposition de nombreux outils permettant de faciliter la programmation et la mise au point de votre code VBA : outils de débogage, assistance à la saisie, explorateur d’objets…
- VISUAL BASIC EDITOR (VBE), qui s’exécute dans une fenêtre différente de celle d’EXCEL.
-
Accès à l’environnement VBE
- Pour accéder à l’environnement VBE depuis Excel, cliquez sur le bouton de l’onglet Développeur ou utilisez le raccourci-clavier [Alt]+[F11].
- Celui-ci comporte plusieurs éléments dont les principaux sont:
-
L’explorateur de projets
- Il permet de visualiser les différents projets et éléments constitutifs qui les composent – objets, modules, modules de classe, feuilles (ou formulaires) et Référence, et d’accéder à ces éléments ou au code qui leur est attaché.
- Pour qu’un projet apparaisse dans l’Explorateur de projet, il faut que le document auquel il est attaché soit ouvert dans l’application hôte.
-
L’explorateur d’objets
- Il référence les classes, propriétés, méthodes, événements et constantes disponibles dans les bibliothèques d’objets et les procédures de votre projet.
- Il permet de rechercher et d’utiliser des objets que vous créez, ainsi que des objets provenant d’autres applications.
- Cette fenêtre démontre les différentes propriétés et méthodes disponibles dans les bibliothèques d’objets pour votre projet Visual Basic.
- Il suffit d’entrer ce qu’on cherche dans le champs de recherche (le champ vide dans l’image) et de faire Entrée ou cliquer sur les jumelles.
- Cette fenêtre démontre les différentes propriétés et méthodes disponibles dans les bibliothèques d’objets pour votre projet Visual Basic.
- L’explorateur d’objet VBA est très utile lorsqu’on cherche une information sur propriété, méthode ou fonction particulière.
- Il suffit d’entrer ce qu’on cherche dans le champs de recherche (le champ vide dans l’image) et de faire Entrée ou cliquer sur les jumelles.
-
La fenêtre de code
- Vous pouvez y éditer le code de vos projets. Visual Basic Editor
- Cette fenêtre permet d’éditer des procédures Visual Basic créées pour vos besoins spécifiques. Elle vous sera très utile en mode débogage pour vous aider à retracer des erreurs ou tout simplement pour ajouter du code dans votre fichier Excel.
-
La fenêtre UserForm (ou Interface) et la boîte à outils
- La fenêtre UserForm est l’espace dans lequel vous concevez les feuilles VBA. La boîte à outils propose des contrôles communs tels que des cases à cocher ou des zones de listes déroulantes que vous pouvez placer sur une feuille qui constituera une interface pour votre application.
- C’est dans cette fenêtre que vous pourrez personnaliser vos interfaces selon vos besoins particuliers grâce à la boîte à outils.
-
La fenêtre Propriétés
- Elle permet de visualiser et de modifier l’ensemble des propriétés associées aux objets constitutifs d’un projet.
- Cette fenêtre est disponible lorsque vous voulez voir et personnaliser les propriétés d’un objet dans Microsoft Excel.
- La fenêtre propriété VBA est affichable en appuyant sur F4, en allant dans le menu Affichage ou via la barre d’outil de l’éditeur de code VBA.
-
Les Projets VBA
- Les projets VBA sont des programmes ou macros écrits dans le langage Visual Basic.
- Un Projet VBA est divisé en plusieurs objets – les voici dans une capture d’écran prise dans l’éditeur du code VBA:
-
Objets Microsoft Excel
- vous trouverez ce groupe dans chaque fichier, qu’il contient du code VBA ou pas. Un « Objet Microsoft Excel » est soit le Classeur (ThisWorkbook) soit chaque Feuille de ce Classeur.
- Chaque Objet peut contenir du code VBA qui le concerne en particulier. En gros, ceci sert notamment à placer le code utilisé pour gérer des événements (voir le chapitre 5.9. Les ÉVÉNEMENTS en VBA (Events)).
-
Feuilles
- Les « Feuilles », ce sont en fait les « Formulaires VBA ». Je trouve l’utilisation du mot « Feuille » plutôt contra-productif car elle prête à confusion avec les Feuilles (Sheets) dans le Classeur. En anglais, cette confusion n’a pas lieu (car il y a des Sheets = feuilles du classeur, et des UserForm = formulaires VBA). Dans le groupe « Feuilles », vous trouverez la liste des Formulaires VBA disponibles dans votre Classeur.
- S’il y en a pas, vous ne verrez pas ce groupement… Le concept des « Formulaires VBA » est un puissant outil qui vous permettra de créer des véritables applications en VBA. On abordera ce sujet dans le chapitre « 5.8. Utilisation des FORMULAIRES en VBA ».
-
Modules
- Les Modules sont des « conteneurs » principaux pour votre code. Vous pouvez stocker toutes vos Macros dans un seul Module. Mais si votre code est plus complexe et/ou volumineux, les Modules servent à structurer et regrouper votre code pour une utilisation plus facile. Sachez que la manière de grouper les macros dans les Modules n’influence pas leur manière de fonctionner.
- Il s’agit d’une fonctionnalité purement organisationnelle (mais bien utile!) – pour se retrouver plus facilement dans le code, pour pouvoir importer/exporter plus facilement le code VBA etc.
- Remarque: dans un fichier Excel vierge il n’y a pas de Module. Vous devez commencer par en créer un ou plusieurs (dans l’éditeur VBA, clic droit sur votre Projet & « Insertion » & « Module »)
-
Modules de classe
-
Les Modules de classe servent à stocker le code VBA qui constitue des Classes (qui l’aurait dit!). Les Classes sont un concept assez particulier qui est utilisé par les programmeurs très avancés qui gèrent des grands projets. On ne va pas s’occuper des Classes dans le cadre de ce cours. Sachez que vous pouvez passer toute votre vie à programmer en VBA sans jamais devoir les utiliser…