VBA
De WikiDeveloppez.
(Différences entre les versions)
m |
m |
||
Sa syntaxe est identique à celle du [[Visual Basic 6|Visual Basic]]. A la différence du [[Visual Basic 6|Visual Basic]], VBA ne fonctionne pas seul et est obligatoirement utilisé au sein d'une application hôte. Vous trouverez les différences détaillées entre VB6 et VBA sur [[Visual Basic 6#vb6versusvba|cette page]]. | Sa syntaxe est identique à celle du [[Visual Basic 6|Visual Basic]]. A la différence du [[Visual Basic 6|Visual Basic]], VBA ne fonctionne pas seul et est obligatoirement utilisé au sein d'une application hôte. Vous trouverez les différences détaillées entre VB6 et VBA sur [[Visual Basic 6#vb6versusvba|cette page]]. | ||
===Comment ça marche ?=== | ===Comment ça marche ?=== | ||
- | VBA est un environnement de développement complet destiné à être intégré dans des applications hôtes, afin de procurer des fonctionnalités de programmation à l'utilisateur final.<br/> | + | VBA est un environnement de développement intégré (EDI) complet destiné à être intégré dans des applications hôtes, afin de procurer des fonctionnalités de programmation à l'utilisateur final.<br/> |
+ | Il comprend:<br/> | ||
+ | * des outils de développement, (1) un éditeur de code <small>(avec technologie ''IntelliSense'')</small>, (2) un débogueur, (3) un navigateur/explorateur de classes d'objets; | ||
+ | * ''Microsoft Forms'' qui fournit (1) des outils intégrés à l'EDI pour la [[#userforms|conception de boîtes de dialogues]], (2) un ensemble de composants ActiveX; | ||
+ | * un moteur d'exécution du langage VBA; | ||
+ | * une bibliothèque de fonctions et de classes; | ||
+ | * des mécanismes de protection du code (mot de passe) et de sécurité (signature numérique du projet). | ||
+ | |||
<br/> | <br/> | ||
L'application doit fournir un '''Modèle Objet''' qui permet de la manipuler par programmation.<br/> | L'application doit fournir un '''Modèle Objet''' qui permet de la manipuler par programmation.<br/> | ||
Par le truchement de ce '''Modèle Objet''' spécifique à l'application, il est possible d'agir sur l'application elle-même (exécution de commandes, gestion de l'affichage, manipulation de fenêtres, adaptation de l'IHM...), et aussi sur ses documents (création, modification).<br/> | Par le truchement de ce '''Modèle Objet''' spécifique à l'application, il est possible d'agir sur l'application elle-même (exécution de commandes, gestion de l'affichage, manipulation de fenêtres, adaptation de l'IHM...), et aussi sur ses documents (création, modification).<br/> | ||
- | La racine du '''Modèle Objet''' est toujours l'objet/classe '''<tt>Application</tt>'''. | + | La racine du '''Modèle Objet''' est toujours l'objet/classe '''<tt>Application</tt>'''.<br/> |
+ | <br/> | ||
+ | <small>(à venir: intégration avec COM)</small> | ||
- | |||
<span id="vbaoutilsnatifs"></span> | <span id="vbaoutilsnatifs"></span> | ||
+ | ==Outils natifs du VBA== | ||
+ | <span id="userforms"></span> | ||
===le Userform=== | ===le Userform=== | ||
Le '''userform''' met à disposition de l'utilisateur une boite de dialogue sur laquelle on placera des contrôles. Ces contrôles permettront de saisir des données ou d'initier des actions. | Le '''userform''' met à disposition de l'utilisateur une boite de dialogue sur laquelle on placera des contrôles. Ces contrôles permettront de saisir des données ou d'initier des actions. |