最新トピック
1
20 日前
排他制御 20 日前
2
1 ヶ月前
Hatena様にご質問 1 ヶ月前
6
3 ヶ月前
モジュールでカレントフォームのコントロールを使うには 3 ヶ月前
7
4 ヶ月前
日付のテキストボックスからフォームが開けません 4 ヶ月前
9
4 ヶ月前
レポートにおける数値の間隔を広げる方法 4 ヶ月前
12
4 ヶ月前
リストボックスから複数選択しそれをテーブルに格納したい 4 ヶ月前
タグリスト
Markdown テーブル生成
Accessのテーブルやクエリのデータを貼り付ける場合は下記で、Markdown書式のテーブルに変換して貼り付けてください。
これで本当に各人物の資格情報を見れますか。見れないと思います。
メインもサブもマスターテーブルですので、それぞれのマスターテーブルのデータが表示されるだけです。
マスターテーブルと連結したフォームですので当然そうなります。
この場合、マスターテーブルは書き換えてはいけないので、フォームの設定で更新できないようにしておきます。
例えば、「レコードセット」プロパティを「スナップショット」に設定しておきます。
どの人物がどの資格を持っているかを格納しているテーブルはRテーブルですので、サブフォームのレコードソースはRテーブルにします。サブフォームのM2IDはコンボボックスにして、資格名を表示させるようにしておきます。
あるいは、下記の紹介した方法でIDと資格名の両方から選択できるようにしてもいいでしょう。
コードでも名称でも入力できるコンボボックス - hatena chips
サブフォームコントロールの「リンク親フィールド」と「リンク子フィールド」をM1のIDに設定すればご希望のメイン/サブフォームになります。
人物はメインフォームでレコード移動して切り替えます。あるいは、検索で目的の人物に移動してもいいでしょう。
別の方法として、メインフォームは非連結(レコードソースは空欄)にしておいて、M1を値集合ソースとするコンボボックスまたは、リストボックスを配置して、このコントロール名を「リンク親フィールド」に設定します。
これで、このコンボボックスかリストボックスで人物を選択するとその資格情報がサブフォームに表示されます。
非連結なので、マスターテーブルが更新されることはありません。
例えば、下記で紹介しているようなフォームです。人物の人数が多くても、トグルボタンで50音で絞り込めるので目的の人物に簡単にたどり着けます。
名簿管理フォームの設計 - hatena chips