Le code suivant est à coller dans un module. En faisant varier nIDEvent on peut ajouter autant de timer que l'on veut sans être obligé de créer un formulaire caché. Pour l'exemple lancer la fonction Start_Test_Timer() Elle affiche l'heure dans la barre de statut...
Pour la version 97, utiliser la fonction AddrOf présente dans les sources. Dans la procédure Start_Timer, pensez à supprimer la ligne qui ne correspond pas à votre version Access.
Parfois, lorsque vous reprennez le projet d'un autre développeur, vous avez besoin de réaliser le dictionnaire des données de la base afin d'avoir sous les yeux l'ensemble des champs (attributs) utilisés.
Cet exemple de code utilise la librairie Microsoft DAO (il vous faut donc ajouter cette référence) afin de parcourir la structure du fichier mdb.
L'ensemble du résultat est envoyé vers une table nommée Tbl_Dictionnaire que le module se chargera de créer si celle-ci n'existe pas.
Cet exemple permet de lister l'ensemble des tables et des champs d'une base de données. Le résultat est envoyé dans un treeview ce qui permet d'avoir une vue globale des propriétés de l'ensemble des champs de la base de données.
Cet exemple de code permet d'importer des données depuis un fichier texte. La caractéristique de ce fichier texte est que les enregistrements sont mis les uns à la suite des autres sans séparateur. Nous ne connaissons que la taille des différents champs.
Un exemple de fichier texte :
Code :
0001WARIN Christophe0002BALTAZARD Marie
0004DUPONT Jacques 0005PIERRE Louis 0006HUGUES Hugo
0007PARQ Patrice
Important : Pour que ce code fonctionne, vous devez ajouter la référence Microsoft Excel X.0 à votre projet.
Lorsque vous transférez les données d'une table ou d'une requête vers un fichier Excel, aucune mise en forme n'est appliquée au fichier xls. Les colonnes ont ainsi toutes la même taille, les titres ne se distinguent pas, etc ...
Pour pouvoir modifier l'aspect du fichier, il faut utiliser le processus Automation à travers un objet Excel.Application.
L'exemple suivant permet de changer l'apparence de l'entête et de redimensionner les colonnes afin de les ajuster à leur contenu.
Parfois, vous souhaitez importer un fichier texte qui ne respecte pas la norme des fichiers texte compris par Access à savoir : les champs doivent apparaître en colonne. C'est notamment le cas de certains fichier de rapport de log de serveur. Voici un exemple d'un tel fichier :
NAME : 03dbw1
REALNAME : 03dbw1
OS : POWER_604 (4 cpu) AIX 4.3
--------------------------------
NAME : 03pbdd
REALNAME : 03pbdd
OS : Xeon 2.80GHz HT (4 cpu) NT Server 5.0
--------------------------------
NAME : 05eapp2
REALNAME : 05eapp2
OS : POWER_604 (4 cpu) AIX 4.3
--------------------------------
NAME : 30dapp1
REALNAME : 30dapp1
OS : POWER_630 (4 cpu) AIX 4.3
--------------------------------
NAME : 30eapp1
REALNAME : 30eapp1
OS : POWER_630 (4 cpu) AIX 4.3
Nous constatons que les champs sont les uns en dessous des autres et que les enregistrements sont séparés par une ligne de tirets.
Un moyen simple d'importer un tel fichier est de créer une table possédant les mêmes champs que ceux qui apparaissent dans le texte.
La fonction de cet exemple permet de récuperer le code HTML d'une page Web. Elle reçoit comme paramètre l'url de la page à analyser.
Dans le code, remplacez la définition MSXML2.ServerXMLHTTP50 par celle disponible dans la référence XML que vous avez ajouté à votre projet. Exemple, dans le cas de v6.0 : MSXML2.ServerXMLHTTP60
Au lancement de l’application, avant la connexion avec les données le programme vérifie si il y a des connexions existantes sur les données, pour ce faire présence de fichier(s) fichier Données.ldb, si ce fichier est présent, cela signifie que la base est utilisée ===> pas de compactage, le programme démarre normalement.
Si personne n’est connecté sur Données.mdb, le programme vérifie alors que la base n'est pas en cours de compactage, si le fichier DonnéesTmp.mdb est présent ceci signifie qu'elle est en cours de compactage ==> exit du programme avec un message indiquant à l’utilisateur de se reconnecter dans quelques secondes (le compactage est très rapide).
Si la base n’est pas en cours de compactage, le programme vérifie si il y a déjà eu un compactage aujourd’hui, (la procédure vérifie la présence sur le serveur (répertoire où sont les données) qu’il n’y a pas de fichier texte nommé JJMMAAAA, si ce fichier est présent le compactage a déjà été fait ===> pas de compactage, le programme démarre normalement.
En résumé si je suis le premier de la journée et qu’il n’y a personne de connecté, le programme lance le compactage.
Après le compactage la procédure créée un fichier nommé JJMMAAAA dans le répertoire où sont stockées les données Données.mdb, ceci permet de déposer un flag lisible à chaque lancement de programme, ceci afin de ne lancer qu’un compactage dans la journée.
Ces modules sont lancés depuis la macro « CompactageMacro » cette macro est lancée avant l’autoexec, pour cela il faut indiquer dans la chaine de commande /x /CompactageMacro.
Voici un moyen de permettre à l'utilisateur de sélectionner une police. Cet exemple utilise l'API Windows ChooseFont qui affiche la boîte de dialogue commune Windows intitulée Sélectionner une police.