Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

définir le nom d'une TableDef

4 réponses
Avatar
mael
Bonjour à tous.

J'utilise une TableDef pour afficher certaines informations (date de
création) sur une table de ma base.

****************************************
Dim DB As DAO.Database
Dim TDF As DAO.TableDef
Dim NomTable As String

Set DB = OpenDatabase("D:\MaBase.mdb")

Set TDF = DB![MaTable1]
****************************************

Ceci marche très bien mais voilà, je voudrais changer automatiquement le nom
de la table à lire suivant une liste d'un formulaire.
J'ai donc ajouté ceci :

**************************************

NomTable = Formulaire!ListeTables
Set TDF = DB!NomTable

************************************

Le pb c'est que la deuxième ligne ne marche pas ! J'ai essayé en string,
pareil.

Quelle est la solution ? La bonne syntaxe ?

Merci d'avance.

4 réponses

Avatar
André AVONS
Salut
Set tdf = DB.TableDefs(NomTable)
--
@+
André

Quelques liens avec des exemples, des utilitaires et des compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
"mael" a écrit dans le
message de news:beduni$pqa$

Bonjour à tous.

J'utilise une TableDef pour afficher certaines informations (date de
création) sur une table de ma base.

****************************************
Dim DB As DAO.Database
Dim TDF As DAO.TableDef
Dim NomTable As String

Set DB = OpenDatabase("D:MaBase.mdb")

Set TDF = DB![MaTable1]
****************************************

Ceci marche très bien mais voilà, je voudrais changer automatiquement le
nom

de la table à lire suivant une liste d'un formulaire.
J'ai donc ajouté ceci :

**************************************

NomTable = Formulaire!ListeTables
Set TDF = DB!NomTable

************************************

Le pb c'est que la deuxième ligne ne marche pas ! J'ai essayé en string,
pareil.

Quelle est la solution ? La bonne syntaxe ?

Merci d'avance.







Avatar
joyeux atchoum
s'lt

**************************************

NomTable = Formulaire!ListeTables
Set TDF = DB!NomTable

************************************


Peut etre la fonction eval()

Set TDF = eval("DB!" & nomTable)


mais je ne garanti rien

ja;)
qui a eu utilisé la fonction en javascript dans un autre monde :=)

Avatar
joyeux atchoum
Sl't

Salut
Set tdf = DB.TableDefs(NomTable)


suis je bete c'est vrai que ça existe les collections
et moi qui sort un truc a tirelarigo ;(


ja ;)
qui va se planquer

Avatar
mael
Magnifique ! Ca marche.

C'est tout bête mais je ne trouvais pas.

Merci encore.


"joyeux atchoum" a écrit dans le message de news:

Sl't

Salut
Set tdf = DB.TableDefs(NomTable)


suis je bete c'est vrai que ça existe les collections
et moi qui sort un truc a tirelarigo ;(


ja ;)
qui va se planquer