在你的窗口上加一个公用对话框cmdlg,一个List控件List1,再引用Microsoft DAO 3.51/3.6库
调用以下过程就可以在List中显示所有表格的名称
Private Sub GetAllTable()
Dim i As Integer
Dim db As Database
Dim tb As TableDef
Dim dbName As String
CmDlg.Filter = "Access Database (*.MDB)|*.MDB"
CmDlg.ShowOpen
If CmDlg.FileName = "" Then Exit Sub
dbName = CmDlg.FileName
Set db = OpenDatabase(CmDlg.FileName)
db.TableDefs.Refresh
For Each tb In db.TableDefs
List1.AddItem tb.Name
Next
For i = 1 To 5
List1.RemoveItem 0
Next i
End Sub
Private Sub Command1_Click()
Dim db As Database
Dim tb As TableDef
Set db = OpenDatabase("c:\temp\myDB.mdb")
For Each tb In db.TableDefs
MsgBox tb.Name
Next tb
End Sub
好像其中有五个表是系统表(MSys开头的)