# Tabellen auflisten lassen



## knowledge (14. Juli 2005)

Ich kann mit dem unten stehenden Code alle Tabellen in meine Datenbank auflisten lassen aber dieser Code ist für aktuelle Datenbank, meine für eine geöffnete Datenbank. Wie kann ich den Code für andere(nicht geöffnete) Datenbanken modifizieren

```
Public Sub ListTables()

    Dim i As Integer
    
    On Error Resume Next
    
    For i = 0 To CurrentDb.TableDefs.count - 1
        Debug.Print "Table: " & CurrentDb.TableDefs(i).Name
    Next
    
End Sub
```


----------



## wincnc (14. Juli 2005)

Hallo, versuch´s mal hiermit:

```
' Verweis auf Microsoft DAO 3.51 oder DAO 3.6 Object Library nicht vergessen 

Dim Con As DAO.Database
Dim i As Long

Set Con = DBEngine.OpenDatabase("d:\db2.mdb")
 
For i = 0 To Con.TableDefs.Count - 1
  Debug.Print "Table: " & Con.TableDefs(i).Name
Next
```


----------



## knowledge (14. Juli 2005)

Der Code funktioniert nicht und ja ich arbeite mit ADO


----------



## wincnc (14. Juli 2005)

Willst Du den Code in Access oder VB6 benutzen ?

Dieser Code funktioniert in Access und in VB6:

```
' Verweis auf Microsoft ActiveX Data Objects 2.x Library nicht vergessen

Dim DB As ADODB.Connection
Dim RS As ADODB.Recordset

Set DB = New ADODB.Connection
Set RS = New ADODB.Recordset

DB.CursorLocation = adUseClient
DB.Provider = "Microsoft.Jet.OLEDB.4.0"
DB.Open "d:\db2.mdb"

Set RS = DB.OpenSchema(adSchemaTables)

Do Until RS.EOF
  MsgBox RS("TABLE_NAME")
  RS.MoveNext
Loop
```
Edit: Code hinzugefügt


----------



## knowledge (14. Juli 2005)

Ich bekomme den Fehler MS Jet Datenbankmodul kann die Datenbank nicht öffnen. Sie ist bereit von einem anderen benutzer exclusiv geöffnet oder Sie benötigen eine Berechtigung, um Daten lesen zu können.
was soll ich jetzt dagegen machen?


----------



## wincnc (14. Juli 2005)

Wofür ist denn jetzt der Code ? Access oder VB6

Ist die Datenbank wirklich exclusiv geöffnet oder mit Passwort geschützt ?


----------



## knowledge (14. Juli 2005)

Der Code ist für Access und die Datenbank ist noch exclusiv geöffnet weder mit passwort geschützt.


----------



## wincnc (14. Juli 2005)

Also bei mir funktioniert der Code einwandfrei in Access 2000.
Listed sogar Systemtabellen und Abfragen auf.
Den Verweis habe ich auf Microsoft ActiveX Data Objects 2.1 Library


----------

