Ciao !
Con DAO non saprei, con ADO neanche... con RDO è molto semplice:
codice:
 Dim Conn As RDO.rdoConnection
 Dim tbl As RDO.rdoTable

 Set Conn rdoEngine(0).OpenConnection(nome_DSN)  ' connessione...
 If Conn.rdoTables.Count = 0 Then Exit Sub   ' un controllino !
  
  For Each tbl In Conn.rdoTables
    MsgBox "trovata tabella: " & tbl.Name
  Next
Dopo di chè, ogni oggetto rdoTable ha una collection rdoColumns di oggetti rdoColumn che rappresentano le colonne. Da questi oggetti puoi anche determinare gli attributi dei campi (nome, dimensioni, richiesto, consente lungh.zero, tipo di dato...)

Spero di esserti stato utile
Ciao
Simo