Modifications essentielles à l'interface
L'explorateur de projets (sauvegardes)
Déclarations, types et références
Avant d'explorer les composantes de l'éditeur VBE, vous devez l'afficher:
De plus, assurez-vous d'afficher les fenêtres optionnelles:
Finalement, affichez les barres d'outils optionnelles:
L'environnement de développement VBE comporte plusieurs zones:
Le tableau ci-dessous explique les éléments qu'on retrouve à l'écran.
Utilisez le menu Affichage pour afficher les éléments absents de votre affichage.
1) Menus | Les choix les plus fréquemment utilisés sont dans les menus Insertion et Débogage. |
2) Explorateur de projets | Sert à choisir ce qui est affiché dans la fenêtre de code (9) et dans l'explorateur d'objets (3). |
3) Explorateur d'objets | Permet de consulter et modifier les propriétés de l'objet sélectionné dans l'explorateur de projets (2). |
4) Barres d'outils | Il est recommandé d'afficher toutes les barres d'outils optionnelles. |
5) Bouton Démarrer/Continuer | Sert à démarrer l'exécution continue du code sélectionné dans la fenêtre de code (9). |
6) Bouton Arrêter | Sert à arrêter l'exécution du code VBA en cours. |
7) Bouton commenter | Sert à désactiver (mettre en commentaire) le bloc de code sélectionné dans la fenêtre Code (9). |
8) Bouton ne pas commenter | Sert à réactiver (enlever commentaire) le bloc de code sélectionné dans la fenêtre Code. |
9) Fenêtre Code OU Fenêtre Formulaire |
Affiche le code VBA OU les objets de formulaire de l'objet sélectionné dans l'explorateur de projets (2). |
10) Nom du module affiché | Liste déroulante permettant de passer d'un objet du projet à un autre sans passer par l'explorateur de projets (2). |
11) Option Explicit | Instruction que l'on doit retrouver au début de chaque module et qui force la déclaration explicite des variables. |
12) Marge de la fenêtre Code | Contient des repères visuels lors du développement d'un programme VBA. |
13) Fenêtre Exécution | |
14) Fenêtre Variables locales | |
15) Fenêtre Espions |
Pour modifier l'interface VBE selon ces conseils:
L'explorateur de projets permet de naviguer dans les différents endroits pouvant
contenir du code VBA Excel,
c'est à dire les différents emplacements où il vous est possible de sauvegarder le code que vous allez écrire.
Vos choix:
|
|
Dans un classeur Excel, vous devez choisir un des endroits suivants:
Tous ces emplacements peuvent contenir du code VBA Excel. En pratique, vous utiliserez le plus souvent les endroits suivants:
|
L'explorateur d'objets sert principalement:
C'est dans cette fenêtre qu'on crée/édite le code VBA.
1) Entête | Affiche le nom de l'emplacement (classeur, feuille de classeur, module, formulaire) contenant le code affiché. L'emplacement est choisi dans l'explorateur de projets. |
2) Zone objet | Objets disponibles dans le contexte du conteneur choisi dans l'explorateur de projets. |
3) Zone procédures/ événements |
Liste de toutes les procédures du module (en gras) et des procédures événementielles (en pâle) possibles de l'objet choisi dans la zone objet (2). |
4) Marge de la fenêtre code | Contient des repères visuels lors du développement d'un programme VBA: les points d'arrêt. |
5) Affichage Procédure/module | Boutons permettant de basculer entre l'affichage d'une seule procédure et l'affichage de toutes les procédures du module. |
6) Éditeur de code | Éditeur de texte permettant de créer/éditer des procédures SUB ou des procédures Function. |
7) Barre de fractionnement | Permet de diviser la fenêtre de code en deux parties horizontales pour afficher simultanément deux parties d'un même module. |
La fenêtre code offre les fonctionnalités d'éditeur habituelles pour créer/éditer du code VBA. Il y existe aussi quelques fonctionnalités additionnelles:
Les mots réservés VBA sont bleus.
D'autres raccourcis sont disponibles.
Cette fenêtre permet d'exécuter une ligne de code VBA en dehors d'un module.
Par exemple, taper
? fnMoyenneAvecCellulesNulles(Range("A1..B5")
exécute la fonction personnalisée fnMoyenneAvecCellulesNulles et en affiche le
résultat.
? Range("A1")
affichera la valeur de la cellule A1.
Modérément utile pour tester des instructions. Si vous n'utilisez pas cette fonctionnalité, vous devriez effacer cette fenêtre.
Cette fenêtre affiche la liste des variables locales du module en cours d'exécution (mode débogage) et permet d'en connaître la valeur et le type.
Cette fenêtre est très utile pour déboguer les programmes.
Cette fenêtre affiche la valeur de variables choisies, en
mode débogage. À la différence de la Fenêtre variables locales, il est
possible de s'y faire
afficher la valeur de n'importe quelle variable, locale ou
non.
Modérément utile pour déboguer les programmes. Vous pourriez effacer cette fenêtre.
Dans Office, il n'est plus possible d'accéder à l'aide locale.
On peut accéder à l'aide VBA en ligne de 2 façons:
L'aide VBA tente d'identifier le sujet sur lequel vous souhaitez de l'aide et d'afficher l'aide correspondante.
Il est aussi possible de consulter la référence de Microsoft sur le langage VBA lui-même, à l'adresse:
https://msdn.microsoft.com/fr-ca/vba/vba-language-reference
Quelques fichiers d'aide VBA sont disponibles en suivant les instructions d'installation suivantes:
Vous y trouverez en particulier
Vous pouvez aussi (et surtout!) utiliser l'onglet recherche pour obtenir de l'aide sur un objet Excel:
+active Compléter mot.
affiche la fenêtre code.
affiche l'explorateur d'objets.
+ procédure suivante.
+ écran suivant.
+, +, ... Les autres raccourcis habituels fonctionnent aussi.
ajoute/supprime un point d'arrêt.
++ supprime tous les points d'arrêt.
exécute la procédure active.
+ interrompre l'exécution d'un module. Si votre clavier ne comporte pas de touche Pause/Break, contactez le fabricant de l'ordinateur pour trouver la combinaison de touches équivalente ou utilisez un autre clavier. Cette touche est indispensable pour déboguer les programmes.
démarre le mode pas à pas.
+ exécute jusqu'au curseur.
+ enregistre le code VBA dans le classeur (mais n'enregistre pas le classeur!).
VBE offre une fonctionnalité qui complète un mot dont vous avez tapé les premières lettres.
Exemple: dans une procédure Sub tapez Dim sNom as st puis enfoncez les touches + VBE affiche la liste des mots commençant par st qui sont valides dans le contexte. |
|
Si vous tapez une lettre additionnelle (r), la liste se raffine. |
Et si la liste ne comporte qu'une seule possibilité, VBE complète le mot automatiquement.
Tapez |
Dim sPrénom as str |
puis enfoncez les touches + VBE complètera automatiquement puisque String est le seul mot VBA commençant par Str qui est valide à cet endroit. |
Dim sPrénom as String |
Lorsque vous travaillez en VBA-Excel, vous travaillez en fait avec 2 logiciels, chacun affichant sa fenêtre.
Si vous disposez de 2 écrans, vous devriez afficher la fenêtre Excel dans un écran, la fenêtre VBE dans l'autre:
Si vous ne disposez que d'un seul écran, utilisez les touches
+pour placer une fenêtre à gauche et
+pour placer une fenêtre à droite:
Dans tous les cas, vous pouvez utiliser les touches + pour basculer d'une application à l'autre.
Pour enregistrer votre projet VBA, cliquez la disquette de la barre de boutons
Ou la combinaison de touches +
Ou encore fermer la fenêtre, tout simplement.
Mais ATTENTION votre projet VBA n'est pas sauvegardé sur disque, mais est sauvegardé dans le classeur Excel.
VOUS DEVEZ SAUVEGARDER LE CLASSEUR EXCEL POUR QUE VOTRE PROJET VBA SOIT SAUVEGARDÉ.
Enregistrer un classeur Excel contenant une macro VBA
Un programmeur passe la grande majorité de son temps à tester et à déboguer du code. Il est donc essentiel de maîtriser les techniques de débogage ci-dessous.
VBE fournit un menu et une barre de boutons pour suivre l'exécution d'un programme VBA en mode pas à pas. De plus, la fenêtre Variables locale permet de suivre les valeurs des variables. Finalement, On peut suivre dans Excel les changements que le programme VBA apporte au clsseur.
Les principales techniques de débogage sont illustrées dans le document suivant:
L'environnement d'édition VBA (Visual Basic Editor) offre plusieurs fonctionnalités pour faciliter la rédaction de programmes VBA. Les principales sont:
Pour sauvegarder un projet VBA Excel, il faut sauvegarder LE CLASSEUR Excel qui le contient.
Dans cette section nous avons présenté les modes d'emploi suivants:
Enregistrer un classeur Excel contenant une macro VBA
Le fichier Excel Tutoriel Exemples VBE.xlsm contient l'exemple présenté dans la présente section.