XL 2013 [VBA] Lister les noms des tables et requêtes Access sous Excel

ralph45

XLDnaute Impliqué
Bonsoir le Forum,

Débutant sous Acces et ayant récupéré une base de données assez conséquente avec des dizaines de tables et des centaines de requêtes, je voulais me faire un mode d'emploi tout en générant des sortes d'index et quoi correspond à quoi ou comment...

D'où ma question du jour : est-il possible de lister sous Excel les noms de ces tables et requêtes ou d'exporter depuis Access sous Excel ceux-ci ?
Attention, je ne parle pas d'exporter d'Access ou d'importer d'Excel les tables et requêtes, mais seulement leurs noms...

Merci de vo.tre.s retour.s. et bonne soirée !
 

dysorthographie

XLDnaute Accro
Bonjour,
VB:
Sub TEST()
Dim cn As Object, tbl As Variant
Set cn = CreateObject("Adodb.connection")
With cn
    .Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Environ("UserProfile") & "\Documents\Database1.accdb;"
    tbl = TableToutes(cn)
    .Close
End With
 For Each t In tbl
    Debug.Print t
 Next
End Sub
Public Property Get TableToutes(Connexion As Object)
Dim t() As String, i As Integer
TableToutes = False
With Connexion.OpenSchema(20)
    While Not .EOF
        ReDim Preserve t(i)
        t(i) = !TABLE_NAME
        i = i + 1
        .MoveNext
    Wend
    .Close
    TableToutes = t
End With
End Property
 

dysorthographie

XLDnaute Accro
Une requête est vue comme une table, donc cette propriété liste invariablement les tables et les requêtes.
Code:
SQL="Select * Fom requête"
SQL="Select * Fom table"

Notes également les table système sont également listées.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
314 628
Messages
2 111 333
Membres
111 104
dernier inscrit
JEMADA