MDB生成/テーブル定義取得ツール

Microsoft Accessのデータベース部分(*.MDB)を生成したり、作成済みのMDBの定義情報を取得します。
これがあればMDBの取り扱いにAccessはなくても済むでしょう。   MDBファイルは本来、Microsoft Accessのデータベースですが、フォームやレポート、マクロなどを使わずに データベース本体だけを扱うのであれば、Microsoft Accessがインストールしてある必要はありません。 これは、ADOでデータを取得する。」から数ページで説明している通りですが、 もし、そのまま動かなくても、MDACの最新版をマイクロソフトのダウンロードサイトからダウンロードしてインストールすれば、 現存のWindowsなら動作可能だと思います。
データの表示や更新はこれらの方法で可能でしたが、データベースの作成やテーブルの作成、初期データの投入などは、Microsoft Accessがあった方が便利です。 ですが、Microsoft Accessがあっても定義情報のドキュメントを出力する機能がなく、結局、別にExcelなどで手作業で定義一覧を作表しているのが実態ではないでしょうか。 そこで、Excelで作表したテーブル定義に従ってデータベースを作成する、あるいは現存のデータベースの定義情報を一括してExcel上に自動的に表示させるツールがあったら便利ですよね。
と言うわけで、作成してみたのがこのツールです。とりあえず「実用範囲」的に考えて、Microsoft Accessのフルスペックをハンドリングできるわけではないのですが、 私が社内でExcelASPをユーザーインタフェースにして利用している範囲では充分に利用できるように考えてあるので、 このようなご要望のある方は試してみて下さい。
まずはどんなものか見てみましょう。
ダウンロードさせて解凍すると、「MDBテーブル定義.xls」というExcelワークブックが作成されます。
MDBテーブル定義.xlsの画面
頻繁に使うものでもないでしょうから、特にマクロの起動ボタン等は用意しませんでした。ツールバーの「マクロ」からプロシージャを起動させて下さい。

入力方法などを細かく説明するより、まずは既存のMDBファイルからテーブル定義情報を取り込んでみることにしましょう。
マクロ「テーブル定義情報の取得」を起動
ツールバーの「ツール」の「マクロ」か、Alt+F8でマクロの起動のウィンドウを表示させると、そこには「MDBファイル作成」と「テーブル定義情報の取得」「テーブル定義情報の追加」の3つが表示されます。 ここでは、「テーブル定義情報の取得」を選択して、「実行」ボタンをクリックして下さい。

すると、次にMDBファイルを選択する画面(「ファイルを開く」のダイアログ)が表示されます。
MDBファイルの選択
この画面説明では、「データベース操作(VBA応用)」の説明で使用したF-1のリザルト情報のMDBを使用することにします。
該当するMDBファイルを選択して、「開く」をクリックすると、即座に処理が開始されます。

処理結果はこのように表示されます。
「テーブル定義情報の取得」の処理結果
このように、テーブル1つが1シートになって、各フィールドが順に表示されます。

新規のデータベース作成時に利用すると効果的です。
上記で利用したサンプルは、「テーブル設計書」を実際に運用しているデータベースから起こしているようなことになります。
本来であれば、「テーブル設計書」が先に作られていて、それを元に実際のデータベースを作成するのだと思いますから、その手順をやってみましょう。
一般的なテーブル定義!?
このように「テーブル設計書」を作成して管理します。プログラムコードの作成段階ではこの「テーブル設計書」を参照して作成するわけですが、その前に、今度は「テーブル設計書」と実物のデータベースの設定作業の「同期」に神経を使うことになるわけです。

では、この「テーブル設計書」からデータベースファイル(*.MDB)が自動的に作成されるとしたらどうでしょう。
「MDBファイル作成」の起動
操作は、すべてのテーブル定義が完成したら、上記と同様に「MDBファイル作成」のマクロを起動します。

すると、作成するMDBファイルの出力先フォルダとファイル名を指定するウィンドウが現われます。
「MDBファイル作成」の起動
ここでMDBのファイル名を入力して「保存」をクリックすれば、データは空の状態でテーブルのみ作成されたMDBファイルが作成されます。

テーブル作成時は、完全ではありませんが最低限の条理チェックは入れてあるので、
「MDBファイル作成」でのエラー表示
このようにエラーがあった場合はデータベースの作成は行なわれません。エラーが表示されなければ数秒もかからずデータベースは作成されるはずです。

このツールで作成されるMDBは、Microsoft Access 2000レベルのものになります。
Microsoft Accessをお持ちなら、作成されたMDBファイルを開いてみると、
Accessでテーブル定義を確認
このようにExcelシート上に設定した通りにテーブルが作成されていることが確認できると思います。

データベースの一括作成のほか、テーブルのみ追加する機能も用意しました。
既に作成して運用を開始しているデータベースに対して、新しい機能を追加するためにテーブルを追加することはよくあることだと思います。 このようなケースでは、追加したいテーブルのシートを選択した状態で、「テーブル定義情報の追加」を起動させて下さい。
「テーブル定義情報の追加」を起動

起動すると、次にデータベース(*.MDB)を指定するダイアログが表示されるので、テーブルを追加するデータベース(*.MDB)を選択して、OKをクリックします。
テーブルを追加するデータベース(*.MDB)を選択
処理はこれだけで終了し、表示シートに指定したテーブルが追加されます。

「この手」のサンプルやフリーソフトはたくさんあるかも知れません。
VBAに強い人は、仕事の上でこのような「ツール」は独自に作られていることでしょう。ネット上のAccess関連のサイトではサンプルやフリーソフトもあるかも知れません。 機能としては大きく違うことはないと思いますが、今回のものはちょっと工夫を入れてあります。
実は、この上のAccessの画面サンプルを見ていただくと分かりますが、テーブルの「説明」のところにExcelシート上に登録してあった日本語名を登録してあります。 Excelシート側では「項目名称」の3列と「項目説明」に入力されていた文字列をテーブルの「説明」のところにカンマ区切りにして登録させておき、 次回、「テーブル定義情報の取得」の方を行なった時には、この日本語の「項目名称」などもできるだけそのままExcelシート上に再現されるように配慮してあります。

ダウンロードはこちら。

←MDB_TableDefines1.zip
      (79KB)