おにこ
2021/07/05 (月) 10:59:14
3e392@b524f
りんご様
回答ありがとうございます。
テーブルAは社員のマスタとして保存しています。
そしてそのマスタを使い別のデータを作りたいのです。
なのでテーブルAで使うデータは社員番号と名前と部署で、テーブルBでは社員の通勤手段や交通費などを管理するデータを使いたいのです。
テーブルBのデータをAに入れてしまうとマスタではなくなってしまうのでテーブルを分けています。
AとBで質問のようにクエリをつくるとAで社員を追加してもBには反映がされずに困っています。
テーブルAの社員番号には主キーを設定しています。
上記の説明で大丈夫でしょうか?
稚拙な文章となり申し訳ありませんが宜しくお願い致します。
通報 ...
私の回答はフォームとVBAを使う方法です。
まず、テーブルAの社員番号とテーブルBの社員番号について準備します。テーブルを開いて、それぞれに主キーを設定します。次に、クエリCを開いて、社員番号フィールド同士を結合します。クエリCを実行した時に、それぞれの社員番号フィールドがその他のフィールドと一緒に表示されるようにしておきます。
クエリCをもとにフォームを作成すると、テキストボックスが自動作成されるので、テーブルAの社員番号がコントロールソースになっているものを選択します。デザインタブのプロパティシートをクリック、イベント項目の更新後処理をクリック、コードビルダーを開きコードを記します。
これで、おそらく希望に答えられたのではないかと思います。
主キー同士を結合したので、クエリCを開いて、テーブルAの社員番号とテキスト型データ4を新規入力すれば、テーブルBの社員番号が自動登録出来るようになったと思います。しかし、社員番号が新規入力、データ4が未入力の状態で終了すると、自動登録されないと思います。うっかりすると、テーブルBの社員番号がテーブルAの社員番号に自動変更されたりすることもありそうです。だんだん何かおかしいデータベースになっていくでしょう。