Cours gratuits » Cours VBA » Cours les macros VBA en pdf

Cours les macros VBA en pdf


Télécharger



★★★★★★★★★★3.5 étoiles sur 5 basé sur 1 votes.
Votez ce document:

Votre première macro VBA

Stéphane Gill

 

Table des matières

 

Document écrit par Stéphane Gill

© Copyright 2007 Stéphane Gill

Ce document est soumis à la licence GNU FDL.  Permission vous est donnée de distribuer, modifier des copies de ce document tant que cette note apparaît clairement.

 

VBA (Visual Basic for Applications) est une implémentation de Microsoft Visual Basic qui est intégrée dans les applications de Microsoft Office, et quelques autres logiciels comme Visio,



AutoCAD, ArcGIS et WordPerfect.

Comme son nom l'indique, VBA est très lié à Visual Basic. La syntaxe et les concepts des deux langages se ressemblent.  VBA est un langage orientée objet, il gère donc des objets auxquels sont associés des méthodes, des propriétés et des événements.

Dans ce chapitre, le lecteur sera invité à écrire sa première macro VBA. Pour ce faire, l’environnement de développement d’une application VBA est présenté.  Par la suite, la structure d’une macro VBA est expliquée avant de décrire les étapes de son exécution.

 

Avant de pouvoir développer en VBA, il est nécessaire de connaître l’environnement de développement. Visual Basic Editor qui est l’environnement de développement de référence intégré à Excel.  Pour atteindre l'environnement Visual Basic Editor il suffit d’aller dans le menu : Outils/Macros/Visual Basic Editor.  La figure suivante présente l’environnement de développement Visual Basic Editor.

 

Dans cette section, l’écriture d’une première macro permettra de comprendre la structure de celle-ci.

Exemple 1

Écrire une macro qui affiche le message « Bonjour à tous ! » dans la cellule A3.

Avant de taper la macro suivante, il faut démarrer l’environnement de développement, puis insérer un nouveau module (menu : Insertion/Module). 

1    Sub Exemple1()

2    ' Ceci est votre première macro VBA

3    [A3] = "Bonjour à tous!"

4    End Sub

La première ligne de cette macro est en fait la signature d’une procédure. En effet, l’ajout d’un module (ou d’une macro) est considéré par VBA comme l’ajout d’une procédure (une méthode).  La ligne 2 n’est qu’un commentaire. Un commentaire commence par un ‘ et va occuper toute la ligne. La ligne 3 permet d’ajouter le texte « Bonjour à tous ! » dans la cellule A3. L’utilisation du End Sub à la ligne 4 indique que la procédure se termine.

 

Avant de poursuivre, exécutons notre première macro.  À partir de l’environnement Visual Basic

Editor cliquer sur le bouton .  Il suffit de regarder le classeur actif pour vérifier si le message « Bonjour à tous! » s’est bien affiché dans la cellule A3.

 

Réussir, sans erreur, l’exécution d’une macro peu sembler fastidieux.  En effet, une simple erreur portant sur l’utilisation d’une parenthèse générera un message d’erreur très peu explicite. Exemple 2

L’erreur suivante provient de l’omission du crochet fermant après A3.

À l’aide d’Excel, il est possible de créer des interfaces graphiques impressionnantes en un temps relativement court.  Plusieurs aspects de la création des formulaires seront traités ultérieurement. 

Dans cette section un exemple de macro utilisant une fenêtre de dialogue simple sera présenté.

Exemple 3

Écrire une macro qui affiche le message « Bonjour le monde » dans une fenêtre de dialogue.

1.  Insérer un nouveau module : Insertion/Module;

2.  Taper le macro suivante:

1    Sub Exemple2()

2    ' Ceci est votre deuxième macro VBA

3    MsgBox ("Bonjour le monde")

4    End Sub

3.  Exécuter la macro et la fenêtre suivante devrait apparaitre:

L'utilisation de MsgBox permet d’ouvrir une fenêtre qui affiche un message simple spécifié par le programmeur. MsgBox ("message")

message est une chaîne de caractères avec le message à afficher.

Exemple 4

Écrire une macro qui affiche dans la cellule A1 un message de salutation personnalisé.

1.  Insérer un nouveau module : Insertion/Module;

2.  Taper le macro suivante:

1    Sub Exemple3()

2    [A1] = "Bonjour " & InputBox("Votre Nom") & "!"

3    End Sub

3.  Exécuter la macro et la fenêtre suivante devrait apparaitre:

L'utilisation de InputBox permet d’ouvrir une fenêtre qui affiche un message simple spécifié par le programmeur.  La fenêtre dispose aussi d’une zone de texte qui permet à l’utilisateur du programme de taper une chaîne de caractères.  La chaîne de caractères est retournée lorsque le bouton OK est pressé. InputBox("message")

message est une chaîne de caractères avec le message à afficher.

avis cg
1579