Microsoft Access 掲示板

フォームのコンボボックスで2つの、フィールドの値のみを表示させたい。

0 コメント
views
4 フォロー

お世話になります。AccsessVBA勉強中の者です。

フォームで国名テーブルをもとにし、
国名選択コンボボックスを作成し、
コンボボックスでは2つのフィールドの値のみ表示させたいと思っています。

まとめテーブルには、1レコードに、施設1、施設2の2つの国名cdをもっています。
コンボボックスで、国名cdテーブルの200以上ある国名から選択させるのは大変なので、
施設1、施設2で登録されている国名のみから選択させるように、
コンボボックスを設定したいのですが、
どのような方法があるか、お知恵をお借りできたら幸いです。
画像があり長文ですみませんが、よろしくお願いします。

[テーブルの構成]
<まとめテーブル1: TG_海外施設_管理まとめ>
(フィールド)
ID      :オートナンバー型(主キー) ⇒連続する数字
施設1_国cd   :数値型 ⇒数値3桁
施設1_施設名 :テキスト型
施設2_国cd   :数値型 ⇒数値3桁
施設3_施設名 :テキスト型
(レコード)
画像4

<テーブル2: TM_国名cd>
(フィールド)
国cd   :数値型 ⇒数値3桁
国名   :テキスト型
(レコード)
※ISO企画の国コード3桁を利用。200以上の国cdがある

[テーブルの構成]
<まとめテーブル1: TG_海外施設_管理まとめ>
(フィールド)
ID      :オートナンバー型(主キー) ⇒連続する数字
施設1_国cd   :数値型 ⇒数値3桁
施設1_施設名 :テキスト型
施設2_国cd   :数値型 ⇒数値3桁
施設3_施設名 :テキスト型
(レコード)
画像4

<テーブル2: TM_国名cd>
(フィールド)
国cd   :数値型 ⇒数値3桁
国名   :テキスト型
(レコード)
※ISO企画の国コード3桁を利用、200以上の国cd、国名のレコードがある

[クエリ]
<Q_海外施設_管理 クエリ>
テーブル1をベースにテーブル2の国cdを連携させ国名を表示
画像3

[フォームの構成]
<フォーム1:F_海外施設_管理>
クエリを帳票フォームで表示
国名を選択するコンボボックスを上部に設置

「コンボボックス1」:cmb国名_全部
 値集合ソース:TM_国名cd
 列数:2、列幅:0cm;2.54cm
 ※TM_国名cdの全ての国名がコンボボックス内に表示される
画像2

「コンボボックス2」:cmb国名_施設1_施設2のみ
 値集合ソース:SELECT DISTINCT [Q_海外施設_管理 クエリ].施設1_国cd, [Q_海外施設_管理 クエリ].施設1_国名 FROM [Q_海外施設_管理 クエリ];
 列数:2、列幅:0cm;2.54cm
 ※クエリの[施設1_国名]で登録された、3種の国名のみ選択欄に表示される
画像1

 ※値集合ソース:のクエリ画面
画像1

【質問】[実現したいこと]
「コンボボックス2:cmb国名_施設1_施設2のみ」で、
[施設1_国名][施設2_国名]で登録・表示されている、5カ国のみ表示されるようにしたい。
(オーストラリア、フランス、ドイツ、イタリア、中国)
値集合ソース:の設定をどのように変更すれば、実現できますでしょうか?
値集合ソース:を国テーブルにして、抽出条件などで設定するべきでしょうか?

何かやり方がありましたら、教えていただきたいです。
何卒よろしくおねがいします。

keepit
作成: 2021/02/01 (月) 18:19:18
通報 ...