システム開発 備忘録



アクセス オブジェクト表示

*** *** *** *** ***


イミディエイトウィンドウに書いてオブジェクト一覧を表示する
(表示結果をエクセル等に貼り付けることで、仕様書等に利用可能)
※エクセルに貼り付ける場合、カンマのかわりにvbTabを使ってもイミディエイトウインドウではスペースに置き換わってしまうためそのままエクセルに貼り付けることはできない。メモ帳などにコピーしてからいったんCSVファイルとして保存してひらくか、エクセルのセルに貼り付け後に「区切り位置」の機能を使って分割する。

'フィールド一覧(テーブル)
't_name="Table1"を対象のテーブル名に変更して利用する
t_name="Table1":for F=0 to currentdb.TableDefs(t_name).Fields.Count-1: ? currentdb.TableDefs(t_name).Fields(F).Name & "," & cstr(currentdb.TableDefs(t_name).Fields(F).Type) & "," & cstr(currentdb.TableDefs(t_name).Fields(F).Size) :next

'説明まで表示する場合
'(説明に何も入っていないフィールドがある場合はエラーとなる)
t_name="Table1":for F=0 to currentdb.TableDefs(t_name).Fields.Count-1: ? currentdb.TableDefs(t_name).Fields(F).Name & "," & cstr(currentdb.TableDefs(t_name).Fields(F).Type) & "," & cstr(currentdb.TableDefs(t_name).Fields(F).Size) & "," & cstr(currentdb.TableDefs(t_name).Fields(F).properties("Description") ):next

'フィールド一覧(クエリー)
'q_name="Query1"を対象のテーブル名に変更して利用する
q_name="Query1":for F=0 to currentdb.QueryDefs(q_name).Fields.Count-1: ? currentdb.QueryDefs(q_name).Fields(F).Name & "," & cstr(currentdb.QueryDefs(q_name).Fields(F).Type) & "," & cstr(currentdb.QueryDefs(q_name).Fields(F).Size) :next

'テーブル名一覧
for i=0 to currentdb.tabledefs.count-1:? currentdb.tabledefs(i).name:next
'テーブル名とレコード数一覧
for i=0 to currentdb.tabledefs.count-1:? currentdb.tabledefs(i).name,currentdb.tabledefs(i).Properties(7) :next

'※テーブルのプロパティ名一覧確認用(但しテーブルが1つは必要)
for i=0 to currentdb.tabledefs(0).Properties.count-1:? i,currentdb.tabledefs(0).Properties(i).name:next

'クエリ名一覧
for i=0 to currentdb.QueryDefs.count-1:? currentdb.QueryDefs(i).name:next
'クエリ名とSQL一覧
for i=0 to currentdb.QueryDefs.count-1:? currentdb.QueryDefs(i).name;vbcrlf & currentdb.QueryDefs(i).Properties(4):next

'※クエリのプロパティ名一覧確認用(但しクエリが1つは必要)
for i=0 to currentdb.QueryDefs(0).Properties.count-1:? i,currentdb.QueryDefs(0).Properties(i).name:next

'フォーム名一覧
for i=0 to currentproject.AllForms.count-1:? currentproject.AllForms(i).name:next

'レポート名一覧
for i=0 to currentproject.AllReports.count-1:? currentproject.AllReports(i).name:next

'モジュール一覧
for i=0 to currentproject.AllModules.count-1:? currentproject.AllModules(i).name:next




Copyright (C) 2009- station-t.com All Rights Reserved , Link Free