目次
TableDefsを使ったテーブル一覧の取得
現在のデータベース中のテーブルの一覧をイミディエイトウィンドウに出力します。
Dim t As DAO.TableDef
For Each t In CurrentDb.TableDefs
Debug.Print t.name
Next
なお、この方法ではシステムテーブルも含まれます。
システムテーブルを除外するには、下記のようにTableDefのAttributesプロパティで判断します。
If (t.Attributes And dbSystemObject) = 0 Then
QueryDefsを使ったクエリー一覧の取得
現在のデータベース中のクエリーの一覧をイミディエイトウィンドウに出力します。
Dim q As DAO.QueryDef
For Each q In CurrentDb.QueryDefs
Debug.Print q.name
Next
CurrentData.AllQueriesを使った場合との違い
クエリービルダーを使って、フォームやクエリーのレコードソースを設定した場合、その内部に作成したクエリー(~で始まる名前が自動的に付与される)が保存されます。
この自動作成されたクエリーは、QueryDefsには含まれますが、AllQueriesには含まれません。
Dim q As AccessObject
For Each q In CurrentData.AllQueries
Debug.Print q.name
Next
コメント