- ベストアンサー
Access2007で商品分類に応じた商品名の表示を設定する方法
- Access2007を使用している初心者の方のために、商品分類に応じて商品名の表示を制御する方法についてご説明します。
- 商品テーブルには商品コード、商品分類、商品名のフィールドがあり、商品分類と商品名のコンボボックスをフォームに作成します。
- 商品分類が「文房具」の場合は商品名コンボボックスに「のり」「はさみ」のみが表示され、筆記用具の場合は「蛍光ペン」「油性ペン」「水性ペン」が表示されます。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
失礼しました。コンボ2の値集合ソースを 以下にしてください。 SELECT 商品テーブル.商品名 FROM 商品テーブル GROUP BY 商品テーブル.商品名, 商品テーブル.商品分類 HAVING (((商品テーブル.商品分類)=[Forms]![フォーム1]![コンボ0]));
その他の回答 (2)
- piroin654
- ベストアンサー率75% (692/917)
コンボ0を変更したとき、まだコンボ2に 表示が残っていると混乱する場合が あるので、コンボ0の更新後に コンボ2の表示を一旦クリアします。 コンボ0の更新後処理を以下のように してみてください。新しく Me.コンボ2 = "" を追加しています。 Private Sub コンボ0_AfterUpdate() Me.コンボ2 = "" Me.コンボ2.Requery End Sub
- piroin654
- ベストアンサー率75% (692/917)
(1)準備 一応、フォーム名、コンボボックス名は 以下のようにします。 フォーム名、コンボボックの名前は 実際に合わせて変更してください。 変更する場合は、(2)、(3)でも 必要な部分を変更してください。 名前 フォーム フォーム1 コンボボックス コンボ0 コンボボックス コンボ2 (2) コンボ0の値集合ソースに以下を貼り付けます。 SELECT 商品テーブル.商品分類 FROM 商品テーブル GROUP BY 商品テーブル.商品分類; コンボ0の更新後処理に以下を設定します。 Private Sub コンボ0_AfterUpdate() Me.コンボ2.Requery End Sub (3) コンボ2の値集合ソースに以下を貼り付けます。 SELECT 商品テーブル.商品分類 FROM 商品テーブル GROUP BY 商品テーブル.商品分類, 商品テーブル.商品コード HAVING (((商品テーブル.商品コード)=[Forms]![フォーム1]![コンボ0])); 分からないところがあれば補足してください。
お礼
すみません。 私のSQL分にタイプミスがございました。 お忙しいところ、ご回答ありがとうございました。 大変、助かりました。
補足
早速のご回答ありがとうございます。 ご教授いただいた通り設定してみたのですが、 コンボ2をクリックしたときに、何も値が出てきませんでした。 なにか考えられる理由ありましたら、 教えていただけないでしょうか。 なんども、お手数ですが、よろしくお願いいたします。
お礼
たび重なる、ご返信ありがとうございます。 おかげさまでうまくいきました。 大変、助かりました。 お忙しいところ、ありがとうございした。