2012/03/04

Accessのサブフォーム

Accessで様々なデータを管理していく上で、「サブフォーム」という機能を使えるようになると、格段に便利になります。
サブフォームとは、メインとなるフォームの中に、別のフォームが埋め込まれている様な感じですが、初めは難しい感じがしますよね。

サブフォームを上手く使うコツは、テーブル設計の時にいかに上手く正規化を実現しておくかと言うことになります。
簡単に言うと、一つのデータを取り出したときに、他のデータがどれだけ効率的に探せるかと言うことになります。
例えば、食べ歩きのデータベースを作成したとき、●●洋食店でいつ、何のメニューを食べたかチェックしたい場合、メインフォームで●●洋食店の住所や電話番号、店休日や営業時間の情報が表示され、サブフォームに、訪問日、食べたメニューや金額、感想などの一覧が表示される様なフォームを作りたい場合、
■店舗テーブル
店舗ID、店舗名、住所、電話番号、店休日、営業時間
■訪問データテーブル
店舗ID、訪問日、時間、食べたもの、金額、感想
と行った感じでのテーブルを作成しておき、店舗IDによって、それぞれのテーブルをリレーションしておけば、フォーム作成ウィザードを使って簡単に上記のフォームを実現出来ます。

店舗情報と訪問情報をそれぞれ別のテーブルとして作成し、双方をつなぐキーとして店舗IDで繋ぐというわけです。

サブフォームは難しいと思われる方も多いのですが、テーブルをいかに上手く設計できるかがカギとなるでしょう。ですから、アクセス上達のポイントは、テーブル設計と言えます。

0 件のコメント: