Microsoft Access ist ein Datenbank- Management-System für die Bürger, ihre eigenen Datenbanken, Berichte und Formulare zu erstellen Benutzer . Zugang enthält alle Bausteine für die Entwicklung von kleinen Anwendungen . Sie können Tabellen für Daten , gespeicherte Prozeduren, benutzerdefinierte Funktionen und Makros zusätzlich zu Berichten und Formularen . All diese Komponenten haben ihren eigenen Rekord Zeiger oder Definitionen in einer versteckten System -Tabelle gespeichert. Zugang verfolgt jede Tabelle , Bericht , Form usw. Sie erstellen und speichert Informationen wie , wenn es erstellt oder aktualisiert wurde und System- Flags. Anleitung
Getting eine Liste der Tabellen
1
Erstellen Sie eine Abfrage , um die SQL-Befehl unten laufen . Diese Abfrage ruft eine Liste aller Tabellen in der aktuellen Access-Datenbank. Die where-Klausel verwendet die Nummer 1 , um anzuzeigen, dass wir nur wollen, dass die Tische zurück.
SELECT MSysObjects.Name , MSysObjects.DateCreate , MSysObjects.DateUpdate , MSysObjects.Type , MSysObjects.Flags
FROM MSysObjects
WHERE MSysObjects.Type = 1
2
Liefert eine Liste nur der nicht-System- Tabellen in der Datenbank mit dem bereitgestellten Beispiel :
SELECT MSysObjects . Name MSysObjects.DateCreate , MSysObjects.DateUpdate , MSysObjects.Type , MSysObjects.Flags
FROM MSysObjects
WHERE MSysObjects.Type = 1 UND MSysObjects.Name Not Like " MSys * "
3
Liefert eine Liste nur der nicht- versteckten Tabellen in der Datenbank, indem Sie die Abfrage ein:
SELECT MSysObjects.Name , MSysObjects.DateCreate , MSysObjects.DateUpdate , MSysObjects . Typ , MSysObjects.Flags
FROM MSysObjects
WHERE MSysObjects.Type = 1 UND MSysObjects.Flags <> 8
4
Sortieren Sie die Liste der nicht - versteckt, nicht-System- Tabellen mit dem SQL-Code ein:
SELECT MSysObjects.Name , MSysObjects.DateCreate , MSysObjects.DateUpdate , MSysObjects.Type , MSysObjects.Flags
FROM MSysObjects
< p> WHERE MSysObjects.Type = 1 UND MSysObjects.Flags <> 8 UND MSysObjects.Name Not Like " MSys * "
ORDER BY MSysObjects.Name
Verwenden Sie die Liste der Tabellen in VBA
5
Laden Sie Ihre Liste der Tabellen in eine Datensatz -Objekt mit den VBA-Code unten :
Dim rsMyTables Wie DAO.Recordset
Set rsMyTables = CurrentDb.OpenRecordset ( " MyQuery " )
6
Schleife durch jeden Datensatz in der Abfrage zurückgegeben .
Dim rsMyTables Wie DAO.Recordset
Set rsMyTables = CurrentDb.OpenRecordset ( " MyQuery " )
Do While Not rsMyTables.EOF
'Code Daten
rsMyTables.MoveNext
Schleife
manipulieren, um Seite 7
in jede Tabelle Namen einer Dropdown-Liste , indem Sie Ihren while-Schleife :
Dim rsMyTables Wie DAO.Recordset
Set rsMyTables = CurrentDb.OpenRecordset ( " MyQuery " )
Me.cmbMyComboBox.Clear
Do While Not rsMyTables.EOF
Me.cmbMyComboBox.AddItem rsMyTables ! [Name]
rsMyTables.MoveNext
Schleife
8
Schließen Sie Datensatz Objekt, damit es den Speicher ist mit freisetzt :
Dim rsMyTables Wie DAO.Recordset
Set rsMyTables = CurrentDb.OpenRecordset ( " MyQuery " )
Me.cmbMyComboBox.Clear
Do While Not rsMyTables.EOF
Me.cmbMyComboBox.AddItem rsMyTables ! [Name]
rsMyTables.MoveNext
Schleife
rsMyTables.Close
Set rsMyTables = Nothing