[Access 2000]Liste des tables d'une BDD [Résolu/Fermé]

Signaler
Messages postés
38
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
19 mai 2008
-
 phano -
Bonjour,

Je travaille sous Access 2000 avec VBA et j'ai besoin, pourl'un de mes formulaire, d'avoir une liste déroulante (Zone de liste) qui contiendrait la liste des tables qui se trouvent dans ma base de données.

En fait je voudrait pouvoir faire comme pour oracle lorsque l'on demande de lister des table du scema de l'utilisateur, du genre
SELECT table_name FROM user_tables;
mais en version Access.


Je précise que dans cette meme base de données, j'ai des tables qui sont masqué, donc je ne veux afficher que ceux qui ne sont pas masquées.

Est il ppossible de faire ça ? et comment ?

Si oui pourriez m'aider parce que je ne sais pas comment le faire.
Donnez moi juste une petite indication pour m'aider à avancer ce serait bien.

Merci par avance.

7 réponses

Bonjour,
Dim Nom$
Dim UneTable
  For Each UneTable In CurrentData.AllTables
    Nom$ = UneTable.Name
    If (UCase(Left$(Nom$, 4)) <> "MSYS") And _
       (UCase(Left$(Nom$, 5)) <> "TABLE") Then  ' tri de certaines tables
      LST1.AddItem Nom$
    End If
  Next UneTable
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
38
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
19 mai 2008
1
Excuse moi j'ai essayé ton code mais j'ai une erreur sur la ligne

LST1.AddItem Nom$

Access me dit "Membre de méthodes ou de données introuvable"

C'est quoi cette erreur ?
Messages postés
270
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
2 février 2012
101
ce ne serait pas plutôt : ... CurrentDb.AllTables (plutôt que CurrentData) ?
Bonjour,

ça tourne chez moi comme ça (Access 2003) et l'aide précise clairement que AllTables s'applique à CurrentData
Messages postés
270
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
2 février 2012
101 > le père
OK, j'aurai appris qqchose :)
Merci.
Messages postés
38
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
19 mai 2008
1
Bonjour,

je vais essayer ca et je vous dirais le résultat. Merci
Messages postés
38
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
19 mai 2008
1
Le Père, j'ai essayé ton code mais il me met une erreur pour LST1.AddItem Nom$ avec comme message "Membre de méthode ou de donnée introuvable". C'est quoi cette erreur ?
Bonjour,

Laisse tomber le LST1 et ajoute le Nom$ dans ta liste par une autre méthode. La méthode Additem n'existe pas dans toutes les variantes de VBA, j'ai déjà rencontré le cas.
Messages postés
38
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
19 mai 2008
1 > le père
OK je vais essayer merci

------------------------------------------------------------------------------------------------------------
Pour Access97, pas de Méthode AddItem aux comboBoxes...
faut donc utiliser RowSource :

Private Sub Form_Load()
Dim sBuffer As String
Dim oTable As TableDef
For Each oTable In CurrentDb.TableDefs
If LenB(sBuffer) Then
sBuffer = sBuffer & ";"
End If
sBuffer = sBuffer & oTable.Name
Next oTable
Modifiable0.RowSourceType = "Value List"
Modifiable0.RowSource = sBuffer
End Sub
Messages postés
38
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
19 mai 2008
1
Bon j'ai modifié pour avoir la liste des tables de la base de donnée et ca marche.

Merci le Pèere pour ton aide ...


J'ai juste un autre problème si tu pouvais m'aider STP ??


Mon problème est que dans ma base, j'ai des tables qui sont masquées donc qui ne doivent pas apparaitre dans la liste déroulante.

Comment je dois faire pour ne pas les afficher ?
Messages postés
38
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
19 mai 2008
1
Laissez tomber; j'ai fait autrement en passant par une table.
Bonjour Mishan,

je sais que c'est un peu obsoléte de te poser cette question mais je n'arrive pas à faire une liste des table qui se trouve dans ma BD...peut tu m'aider?
je suis débutant, j'ai beau essayé de chercher mais rien n'y fait...
je t'explique, j'ai créé un userform ou était un combobox (dans XL), je voudrais grace a une macro récupérer toutes les tables de ma BD et faire le choix d'en sélectionner, pour la visualiser apres...je ne sais pas si je me suis fait bien comprendre...

en tout cas je pense que tu pourrais m'aider...

Merci par avance!