質問: Accessのフォームで、1つのフォームから2つのテーブルにレコードを入力する方法はないのでしょうか。 「1:多」の関係にあるテーブル「T_請求書」と「T_請求書明細」からなるクエリ「Q_請求書明細」で次のように表示しています。 ※太字が主キー 1.T_請求書(1側) **・請求書NO:オートナンバー** ・請求月:日付 ・請求クライアントID:数値 2.T_請求書明細(多側、請求書Noで「T_請求書」とリレーション) **・請求書NO:数値** **・業務内容:短いテキスト** ・請求額:通貨 3.Q_請求書明細 ・請求書NO(T_請求書) ・請求月(T_請求書) ・請求クライアントID(T_請求書) ・業務内容(T_請求書明細) ・請求額(T_請求書明細) この「Q_請求書明細」をレコードソースにした表形式フォームから、新規レコードの登録を行いたいのですがうまくいかず、調べたところ「複数のテーブル、クエリをレコードソースにした場合、フォームからレコードの追加や変更は行えない」ようでした。これを解決する方法があれば伺いたいと思い、質問を投稿させていただきました。すでに似た質問や参考になるWeb記事などがあれば、そちらのURLを教えていただけるだけでもたすかります。 VBAやSQLなどは、そこまで高度なものでなければ扱えます。 情報不足でしたらご指摘いただければと思います、よろしくお願いします。 --- **※10/05 21:38 追記「Q_請求書明細」** ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/7718139aa52b0212ee766b6b7c337a3a.png) **申し訳ありません。グループ化で、予算額を「合計」としており、そのせいでレコードの追加・更新ができないようでした。グループ化を解除すると、レコードの追加・更新ができました。** 出来ればグループ集計したクエリをレコードソースにしたまま、フォームでレコードを追加・更新できるようにしたいのですが、こちらは可能なのでしょうか。
回答: 質問者様は「サブフォーム」をご存じでしょうか ACCESSとVBAとシステム開発 フォームの中にさらにフォームを表示させる機能です。 これは今回のように * 請求書の本体 * 請求書の明細 などに分かれる際に使用するものです。 Accessで作る見積書~9 サブフォームの作成 などは質問者様のしたい事と近しいのではありませんか?