私は、『提案フォーム』と『管理フォーム』(同様に、提案/管理テーブルも作成)を作り、『提案フォーム』に記入した内容を『管理フォーム』の同じコードのレコードに自動で書き込みたい(反映したい)と思いましたが、未入力のままで、自動書き込みはできませんでした。
『提案テーブル/フォーム』(関連テーブル)
*コード(オートナンバー型)
*提案年月日
*カテゴリ
*提案内容
『管理テーブル/フォーム』(主テーブル)
*コード(オートナンバー型)
*提案年月日
更新年月日
*カテゴリ
*提案内容
改善内容
改善過程
・
・
・
試みた方法1)自動結合:クエリの作成
『管理テーブル』から『提案テーブル』と同じ項目を削除し、『管理テーブル』と『提案テーブル』の全項目を
選択したクエリを作った。
試みた方法2)手動結合:リレーションシップを設定する
『管理テーブル』の「コード」と『提案テーブル』の「コード」を結合線で結び、参照整合性の欄にチェックをした。ちなみに、「フィールドの連鎖更新」や「レコードの連鎖削除」にチェックを入れると”「Invalid field definition "コード" in definition of index or relatiionship.」(なぜに英語?!)というエラーメッセージが出てきたので、チェックマークをつけられなかった。
上記の2方法とも『提案フォーム』から入力した内容が『管理フォーム』に自動書き込み(反映)されませんでした。恐らく、『管理テーブル』がオートナンバー型であり、『提案フォーム』で自動入力したコードが『管理テーブル』のレコードの新規作成にあたるために、その段階ではまだ、コードが存在していないことが、原因かと思われるのですが、ハッキリとした原因や解決法は分かりません。
解決法の分かる方がいらっしゃいましたら、宜しくお願いします。
No.1ベストアンサー
- 回答日時:
提案テーブルの内容を全自動で管理テーブルに書き込むのは、Accessにトリガ機能が無いため、不可能です。
したがって、フォームの中で機能を作りこむ必要があります。
先にデータが追加されるのが提案テーブルなのであれば、管理テーブルの「コード」はオートナンバでなく、長整数型などにしておく方が良いでしょう。
提案テーブルに追加する処理の中で、追加クエリを実行するか、VBAでInsert文を実行することで実現するしかありません。
ただ、なぜ提案テーブルと管理テーブルが必要なのかがよくわからないのですが。
管理テーブルに提案テーブルの内容は全て書かれているようですので、管理テーブルだけにして、提案テーブルは選択クエリの形で持っておけば、データは完全に一致しますし、フォームでもテーブルをベースにするのではなく、選択クエリをベースにすればすむので、もし理由が無いのであれば、これをお勧めします。
この回答への補足
回答ありがとうございます。
補足すると、私は自分の職場の業務改善を担当していまして、職場の方からの改善要求を出して頂いて、要求に対する改善の進行状況を把握・提示するためのツール作りをしています。改善要求は、提案テーブルに提案内容を記入するだけにし、できるだけ提案しやすい形にしたいと思い、管理テーブルと別にしました。
回答くださった方法でやってみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
- その他(データベース) accessでのフォームの連携について 2 2022/06/14 00:45
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- その他(プログラミング・Web制作) google formsを使ったタスク依頼フォーム作成におけるご相談 1 2023/06/22 15:55
- Access(アクセス) Access クエリ 同一テーブル内 複数フィールドの同時集計のやり方について 1 2022/05/18 19:01
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでテーブル名やクエリ名...
-
Accessクエリでの、LIKE条件
-
2つのテーブルを比較して一致し...
-
Accessでテーブルからテーブル...
-
ACCESSで指定されたテーブルか...
-
Accessの追加クエリで既存のテ...
-
ACCESSに同時アクセス(編集)を...
-
リンクテーブルを CopyObject ...
-
Accessレコードの追加や変更が...
-
AccessをMDBファイルで使う場合...
-
SQLで日付を条件に削除したい
-
ODBCで接続するとDBに変更/追加...
-
ツリー構造をRDBで表現するには?
-
データ型の変更
-
Accessのフォームの並び替えを...
-
データベースで変更の多いテー...
-
DAOのTableDefs("TblName").Con...
-
3つの表を1つに縦に連結する
-
Access SELECT INTO に関する質...
-
AccessのDlookupの引数設定につ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessでテーブル名やクエリ名...
-
ACCESSに同時アクセス(編集)を...
-
Accessでvlookupみたいなことは...
-
Accessでテーブルからテーブル...
-
Accessクエリでの、LIKE条件
-
Accessレコードの追加や変更が...
-
access テーブル内のレコード...
-
3つの表を1つに縦に連結する
-
SQLで日付を条件に削除したい
-
Accessの追加クエリで既存のテ...
-
SQLで条件指定結合をしたいがNU...
-
デザインビューで、連結式 を...
-
ツリー構造をRDBで表現するには?
-
ACCESSで指定されたテーブルか...
-
リンクテーブルを CopyObject ...
-
2つのテーブルを比較して一致し...
-
時間の足し算
-
ODBCで接続するとDBに変更/追加...
-
パススルークエリをテーブル作...
-
INSERT時にデータ登録とmaxの発...
おすすめ情報