• ベストアンサー

Accessのテーブルの作り方で

こんにちはいつもおせわになります。 すみませんちょっといい案が思いつかないのでお知恵を借りれればと思い質問させていただきました。 フォームにて大分類・中分類を選択して、ありかを表示させることをしたいのです。 例えば大分類に(冬服・夏服・春物・秋物)として、 冬物を選択すると、 中分類の選択で(コート・ジャンバー等)を選択すると、 そのものがあいてある場所をテキストに表示 させるということをしたいと思っています。 多分できると思うのですが。 そのテーブルを作るのってどんな感じで作れば うまくできるものなのでしょうか悩んでいます。 また、大分類と中分類は新規追加も発生します。 どうぞよろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • 11n_kacie
  • ベストアンサー率42% (21/50)
回答No.3

お世話様です。#1です。 テーブルは以下の構造がよいかと思います。 ■大分類TB : 大分類ID、大分類名 ■中分類TB : 中分類ID、大分類ID、場所ID、中分類名 ■場所TB  : 場所ID、場所名 リレーションは#1に従って作成してください。 あとはVBAを利用してフォーム上の動作設定を行ってください。 大分類コンボの更新時に、中分類コンボの値を変更するようにします。 中分類コンボの値は、 「中分類TBの大分類IDフィールドを大分類コンボの値で抽出したもの」です。 これで問題ないかと思います。

totis
質問者

お礼

ありがとうございます。 勉強になりました。

その他の回答 (2)

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.2

全体のテーブルと大・中分類のテーブルで管理する場合でしたら。 メイン 大  中        場所     夏服 ノースリーブ   A     夏服 半そで      B     夏服 短パン      C     冬服 コート      R     冬服 ジャンパー    Z という内容であれば メイン 大分類 中分類   場所      1   3      A      1   4      B      1   5      C      2   1      R      2   2      Z 大分類TB ID 物      1  夏      2  冬 中分類TB ID 種類      1  コート      2  ジャンパー      3  ノースリーブ      4  半そで      5  短パン のようにテーブルを作りフォームなどで検索する場合、まず大分類IDでIDが1(夏)を抽出しその中から半そでであれば中分類IDが4のレコードを抽出するように大分類・中分類の2つの条件で抽出すれば良いのでは。 大・中分類に新規の追加する分類が発生した場合、該当する分類のテーブルに追加していけば良いだけです。

  • 11n_kacie
  • ベストアンサー率42% (21/50)
回答No.1

テーブルの作り方とのことですが、 その場所が中分類1つにつき1つだけであれば、   [大分類]→[中分類]←[場所] 複数の場所に散在している可能性があれば、   [大分類]→[中分類]→[(連関)]←[場所] でいいと思います。 ご質問の意味を取り違えておりましたらすいません。

totis
質問者

補足

早速ありがとうございます。 すみません私の書き方が分かりにくいのですが、 大分類で選択するものによって、 中分類のコンボボックスに表示する内容 を変えたいのですが、 例えば  大 中        場所     夏服 ノースリーブ   A     夏服 半そで      B     夏服 短パン      C     冬服 コート      R     冬服 ジャンパー    Z 全体のパターンののテーブルと 大分類 ID 物     1  夏     2  冬 中分類のテーブルを作ってみたのですが、 そうすると、 夏服を選択したときに 夏物だけが表示されるのではなく 全部の中分類が表示されてしまうので、 夏服を選択したときには夏物だけを次のコンボで選択するようにしたいのです。 そのような時って、どうにテーブルを作るとうまくいくか分からなくて質問いたしました。 どうかよろしくお願いいたします。

関連するQ&A