フォーム上の複数のコンボボックスやリストボックスで、選択した値によって別のコンボボックスやリストボックスのデータを絞りこむものを作ってみました。
サンプルでは、コンボボックスでカテゴリを指定すると、リストボックスで商品が絞り込まれるようになっています。
やっていることは、コンボボックスで選択された値を使って、リストボックスに設定されたクエリで絞り込みを行っています。
VBAの部分は、コンボボックス(コンボ8)をクリックした時に、リストボックス(リスト6)を再クエリさせて絞り込みを行っています。
Option Compare Database Option Explicit Private Sub コンボ8_Click() '再検索で読み直しさせる リスト6.Requery End Sub
サンプルで使っているテーブルは2つですが、重要なのはきちんと二つのテーブルでリレーションシップを設定しておくことです。
片方のテーブルで一つが選ばれると、それに対応するレコードがもう片方のテーブルで絞り込まれるからです。
クエリの設定
完成図
サンプルデータベースのダウンロード