CathyAstuce

VBA

GEMCCAP CONSEIL INFORMATIQUE BUREAUTIQUE
Formation - Conception Sites Internet
Applications Informatiques Personnalisées
Communauté partenaire Microsoft

INTRODUCTION

Présentation Description Écrire du code

Cliquez sur les pour visualiser les fenêtres correspondantes.

Remonter I. Présentation

VBA est un langage objet, vous gérez des objets (ex : une cellule) qui ont des méthodes (ex : la sélection d'une cellule), des propriétés (ex : la couleur de fond d'une cellule) et des évènements (ex : vous venez de changer la sélection). Ce langage est plus ou moins basé sur Visual Basic (selon la version), il est apparu dans Office avec Excel 5. Dans cette version et celle d'Excel 95, les procédures et fonctions sont écrites dans des feuilles modules, vous pouvez également créer vos propres fenêtres de dialogue, chacune dans une feuille spéciale. Depuis Office 97, VBA est entièrement basée sur Visual Basic. Il reprend son environnement, les modules ne sont plus visibles directement dans le classeur, la création de boîte de dialogue personnalisée a été complètement revu et s'effectue dans l'environnement Microsoft Visual Basic. Le VBA s'est étendu aux autres applications d'Office, tel que Word, Access, PowerPoint et Outlook.

Pour atteindre l'environnement VBA :

  • Outils/Macros/Visual Basic Editor.
  • Ou Alt+F11.
  • Ou insérez le bouton Visual Basic Editor sur une barre d'outils et cliquez dessus.

Remonter II. Description

Cette description se fera essentiellement sur l'environnement d'Excel, les différences entre chaque application sont minimes. La fenêtre de VB est composée de plusieurs fenêtres :

  • la fenêtre principale, dans laquelle est écrite le code.
  • la fenêtre Explorateur de projets qui affiche l'arborescence de tous les classeurs ouverts, même ceux cachés. Chaque projet correspond à un classeur, il comprend un  dossier "Microsoft Excel Objets" qui comprend le classeur lui-même, les feuilles de calcul et graphique de ce classeur, éventuellement un dossier "Modules" qui comprend toutes les feuilles modules et éventuellement un dossier "Feuilles" qui comprend tous les "UserForm" (fenêtre personnalisée). Si cette fenêtre n'est pas affichée, cliquez sur le bouton ou Affichage/Explorateur de projets.
  • la fenêtre Propriétés qui vous permet de modifier les propriétés de chaque objet avant l'exécution du code. Cette fenêtre apparaît avec un clic sur le bouton ou Affichage/Fenêtre Propriétés.
  • la fenêtre Explorateur d'objets, qui vous donne pour chaque objet, disponible dans votre application, ses propriétés et méthodes. Cliquez sur le bouton ou Affichage/Explorateur d'objets.
  • les fenêtres servant au débogage : Variables locales qui permet de connaître l'état des variables locales à tout moment au cours de l'exécution(clic sur ou Affichage/Fenêtre Variables locales ), Exécution qui permet d'écrire et de tester du code (clic sur ou Affichage/Fenêtre Exécution ), Espions qui donnent la valeur des variables ou expressions que vous aurez au préalable sélectionnées (clic sur ou Affichage/Fenêtre Espions).

Vous pouvez paramétrer VB avec Outils/Options, je vous conseille de  :

  • Cocher Déclaration des variables obligatoires, dans l'onglet Éditeur. Ainsi toutes feuilles ouvertes contiendra la ligne Option Explicit, ce qui vous aidera à éviter des erreurs de variables.
  • Dans l'onglet Format de l'éditeur, modifiez les couleurs de Texte du mot clé et Texte de l'identificateur afin que le code devienne plus clair à lire.
  • Dans l'onglet Ancrage, cochez toutes les options à l'exception de Explorateur d'objets.

Remonter III. Écrire du code

En enregistrant une macro, Excel ou Word écrivent en VBA, c'est une bonne façon de comprendre et connaître les objets, méthodes et propriétés.
La fenêtre Explorateur d'objets liste entièrement les objets, sélectionnez un objet dans la liste de droite de cette fenêtre, la liste de gauche vous indique toutes les propriétés , méthodes et évènements de cet objet. Sélectionnez l'une d'elles et cliquez sur le bouton Aide pour comprendre comment l'utiliser.
Lorsque vous tapez du code, VB vous aide en vous proposant la propriété ou la méthode commençant par les mêmes lettres, vous pouvez alors la modifier en sélectionnant la bonne dans la liste (appuyez sur la touche ou cliquer dessus) ou la choisir en appuyant sur la touche Tab.

Une propriété d'objet peut être lu ou modifié ainsi : Objet.Propriété
Une méthode s'applique à un objet ainsi : Objet.Méthode
Lorsqu'un évènement se produit soit pendant l'utilisation du classeur, soit par code une procédure évènement est déclenchée.
La syntaxe exacte est toujours indiquée par l'aide, pour l'atteindre :

  • Placez votre curseur d'insertion dans le mot pour lequel vous voulez de l'aide
  • Appuyez sur la touche F1.
AccueilDébut de la page