Bonjour,
Access2000, WXP
Dans une table se trouvent les éléments permettant de dimensionner des variables au démarrage du projet.
Cette table contient les noms des bases et les noms des tables de chaque base attachées à l'application, et peut être modifiée par l'utilisateur en ajoutant ou en retirant une ou plusieurs bases ou tables

On peut donc au démarrage
- en déduire le nombre N de bases utilisées,
- dimensionner la var NomBase(N) qui contiendra les noms de ces bases et la var NbTab(N) qui contiendra le nombre de tables rattachées de chaque base
- extraire de la table les valeurs de NomBase(n) et NbTab(n)
- dimensionner la var NomTab(N,M) où M est le maximum de NbTab(N)
- et pour terminer, extraire de la table les NomTab(n,m)

Je souhaiterais pouvoir déclarer toutes ces variables 'public' mais ça ne peut pas se faire dans une procédure.

Les déclarer d'emblée comme public exige de connaître le nombre de bases et de tables en cause, ce qui n'est pas possible.
On peut évidemment prendre des nombres suffisamment élevés, mais c'es gâcher de l'espace.
J'ai bien entendu une idée du nb maxi de bases qui pourraient être utilisées, ainsi que du nb max de tables .
C'est ce que je fais avec respectivement 10 et 9, et dans une procédure, je fait comme indiqué ci-dessus, à cela près que je n'ai plus besoin de dimmensionner ces variables, ni de trouver N et M.

Mais si une autre solution existe, je suis preneur.

Merci de votre attention.
Amitiés