IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

VBA et développement Web

Image non disponible


précédentsommairesuivant

I. Introduction

Les applications Office ne sont certes pas dédiées à une utilisation avec internet.
Nous pouvons cependant grâce à la programmation VBA créer des passerelles entre internet et Office, en local ou en réseau.

Ce tour d'horizon de développement Web sera loin d'être exhaustif, car le sujet est vaste.

Nous allons écrire beaucoup de code VBA. Un niveau intermédiaire sur ce sujet ne sera pas superflu.

Si vous êtes débutant, commencez au moins par lire cet article : Initiation au VBA Office

II. Librairies utilisées

VBA n'est pas par défaut équipé pour gérer des objets tels qu'un navigateur Internet ou un document XML.
Nous allons donc utiliser différentes librairies dont nous détaillerons l'utilisation dans les chapitres suivants.

À noter :
- à partir de la version 2010, Access dispose d'un contrôle navigateur internet standard ;
- un article à lire pour la gestion du XML à partir d'Office 2007 : Office 2007 et le XML.

Nom Fichier Description
SHDocVw shdocvw.dll Microsoft Internet Controls
MSXML2 msxmlX.dll Microsoft XML, vx.x
MSHTML mshtml.tlb Microsoft HTML Object Library
WinHttp winhttp.dll Microsoft WinHttp Services, version x.x
XcpControlLib npctrl.dll AgControl x.x Type Library (Silverlight)


Ces librairies peuvent être ajoutées aux références du projet VBA.
Pour ajouter une référence :
- ouvrez l'éditeur VBA (ALT+F11) ;
- choisissez dans le menu : Outils => Références ... ;
- recherchez la librairie dans la liste puis cochez-la ;
- validez avec le bouton OK.

Image non disponible

N'ajoutez bien attendu que les librairies nécessaires.

Une fois ajoutées aux références, les membres (propriétés, méthodes...) de ces librairies sont consultables dans l'Explorateur d'objets.
Affichez cet explorateur par le menu Affichage => Explorateur d'objets ou par le raccourci F2.

Image non disponible

Sans ce référencement, les objets sont utilisables mais ils ne sont pas proposés par l'éditeur VBA.
Parfois pratique pour développer sans connaître la version de la librairie qui sera installée, ce mécanisme est connu sous le nom de lien tardif (late binding).
Les objets sont alors déclarés de type Object et aucune instruction n'est vérifiée à la compilation.

En plus de ces librairies, nous utiliserons aussi des API (Application Programming Interface).
Cf. les chapitres API WinInet, API URL Monikers et API Winsock.

II-A. Microsoft Internet Controls

Cette librairie contient les objets :
- Application Internet Explorer : c'est l'application qui s'ouvre quand on exécute Internet Explorer ;
- Navigateur Microsoft (WebBrowser) : ce contrôle ActiveX permet d'intégrer un navigateur dans un formulaire.

Retrouvez les références (propriétés, méthodes...) de ces contrôles sur MSDN (en anglais) : Reference for Visual Basic Developers.

Cette librairie est présente sur le PC si Microsoft Internet Explorer 4.0 (ou plus récent) y est installé.

II-B. Microsoft XML, vX.X

Cette librairie est spécialisée dans le traitement des fichiers XML.
On peut charger un fichier XML et parcourir son arborescence d'objets.
Il est également possible d'y ajouter des éléments et de sauvegarder le fichier.

Une classe très utile (XMLHTTP) de cette librairie permet également d'envoyer des requêtes (GET/POST) pour télécharger une page ou un fichier par exemple.
Cette même classe donne la possibilité d'envoyer des données à un script PHP pour remplir un formulaire et recevoir un résultat en retour.

Pour connaître la version de la librairie XML disponible en fonction de l'OS et des applications installées, rendez-vous sur cette page : Liste des versions de Microsoft XML Parser (MSXML).

II-C. Microsoft HTML Object Library

Cette librairie référence les objets du modèle HTML (document, formulaire, tableau...).
Elle permet de parcourir le contenu d'une page HTML.

Vous trouverez les références (propriétés, méthodes...) (en anglais) de cette librairie sur MSDN : MSHTML Reference.

Cette librairie est présente sur le PC si Microsoft Internet Explorer 4.0 (ou plus récent) y est installé.

II-D. Microsoft WinHTTP Services, vX.X

Cette librairie regroupe les fonctions HTTP des API WinInet.

Vous trouverez les références (propriétés, méthodes...) (en anglais) de cette librairie sur MSDN : WinHttpRequest Object.

Pour connaître la version de la librairie XML disponible en fonction de l'OS et des applications installées, rendez-vous sur cette page : WinHTTP Versions.

II-E. AgControl X.X Type Library (Silverlight)

Cette librairie référence les objets nécessaires à l'utilisation du plugin Silverlight.


précédentsommairesuivant

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2011 Thierry GASPERMENT. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts. Droits de diffusion permanents accordés à Developpez LLC.