Liste des tables – Version 2

Voici une suite à l’article « Liste des tables » paru l’année dernière. Dans cette article, il était question d’afficher la liste des tables Access dans la fenêtre Exécution. Question d’un lecteur sur cet article : « peut-on faire autre chose de cette liste, au lieu de simplement l’afficher dans la fenêtre Exécution ? ». Voici qui devrait donner de nouvelles pistes…

Application 1 : afficher les tables dans une liste de formulaire

Dans cet exemple, on choisit afficher les tables sur un formulaire, dans une liste (ListBox). Pour cela :

  1. Construisez le formulaire.
  2. Placez sur le formulaire une liste (ou une liste déroulante) : objets ListBox ou ComboBox.
  3. A l’aide des propriétés, nommez cette liste lstTables.
  4. Toujours dans les propriétés de la liste, onglet Données, réglez la propriété Origine Source sur Liste Valeurs. Sinon, il sera impossible d’ajouter des éléments à la liste de façon dynamique.
  5. Programmez ceci dans l’événement Sur ouverture du formulaire :

A l’ouverture, vous obtenez ceci :

Reste maintenant à trouver quoi faire des tables, mais ce n’est pas le sujet de cet article ! 🙂

Note
La méthode AddItem n’existe pas dans les Access antérieurs à 2002. Si c’est votre cas, consultez cet autre article du blog.

Application 2 : stocker la liste des tables… dans une table

Dans l’exemple précédent, la liste de tables est alimentée directement en VBA. Vous pouvez aussi stocker la liste des tables dans une autre table. Comme beaucoup de « constructions » Access sont basées sur des tables, on peut imaginer toutes sortes de traitements ensuite (voir plus bas).

  1. Dans mon cas, j’ai préparé une table tbl Tables (ben oui, le nom est moyen :-)), qui comporte au moins un champ Nom Table.
  2. Recopiez ce code dans un module standard de la base de données :

Pour exécuter ce code, vous pouvez ensuite :

  1. Placer un bouton sur un formulaire.
  2. Programmer l’événement Sur clic du bouton en y tapant :

Une fois le bouton cliqué, la table de stockage contient :

Applications dérivées

Maintenant que les tables sont listées… dans une table, on peut utiliser tbl Tables pour :

  • Construire des requêtes
  • Construire des formulaires
  • Construire des états
  • D’autres idées ?

Voici par exemple un état vite fait basé sur tbl Tables :

Vous aimerez aussi...

2 réponses

  1. Louis dit :

    Bonjour,

    Dans un formualaire je cherche a créer une liste de tâches. le formulaire est basé sur une Table qui contient divers champs ( description de la tâche, date, une combo box…). quand on appuie sur exporter le code prend toute les données du formulaire et ensuite envoie ces données dans une nouvelle table( historique)

    Je n’arrive pas a extraire un champ en particulier, ou il y a le nom des utilisateurs avec plusieurs valeurs, en liste déroulante dans la nouvelle table. et VBA me donne comme erreur : ne peut pas insérer dasn un champ, de multiples valeurs…

    D’avance merci!

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *