#361 コンボの2列目をテキストボックスに表示する方法(DFirst版) フォーム

コンボボックスのドロップダウンリストよりある項目を選択したとき、その項目の2列目や3列目の値を別のテキストボックスに代入して表示させる方法です。

ここでは、コンボボックス側のアクションによってその選択項目をテキストボックスへと代入するのではなく、テキストボックス側からコンボボックスの値を参照します。さらに、取得したそのコンボボックスの値をWhere条件としてテーブルを検索し、それぞれの当該フィールドの値を読み込んでテキストボックスに表示します。


作成手順
  1. 下図のようなフォームを作成します。コンボボックスの名前は"得意先コード"、2つのテキストボックスの名前はそれぞれ"得意先名"、"担当者名"とします。
    フォームのデザインビュー

  2. コンボボックスの値集合ソースとして「得意先」テーブルを指定するとともに、その2列目・3列目が「得意先名」と「担当者名」となるよう、"列数"プロパティ等を設定します。
    コンボボックスのプロパティ設定

  3. 「得意先名」テキストボックスのコントロールソースを"=DFirst("得意先名","得意先","得意先コード=" & [得意先コード])"とします。これは、「得意先コード」コンボボックスの選択値(正確には連結列の値)を参照し、それをWhere条件として"得意先"テーブルを検索、最初に見つかった"得意先名"を取得して画面表示するものです。
    テキストボックスのプロパティ設定

  4. 同様に、「担当者名」テキストボックスのコントロールソースを"=DFirst("担当者名","得意先","得意先コード=" & [得意先コード])"とします。

実行例
  1. コンボボックスをドロップダウンして任意の項目を選択します。
    コンボボックスより項目を選択

  2. それによってコンボボックスの2列目・3列目がそれぞれのテキストボックスに表示されます。
    実行結果
※この方法は、コンボボックスで項目を選択してからテキストボックスが表示されるまでに若干時間を要します。しかし、クエリでうまく設定できない場合やVBAを使いたくない場合などに有効な方法です。
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved