
No.1ベストアンサー
- 回答日時:
いろいろやってみましたが、変更の途中でフォームを
閉じたり、などを考えると、たとえば、
ID 元データ 修正後データ
1 中川
2 南
3 佐川
のようなテーブルがあるとします。名前を「テーブル1」
とします。
この、「テーブル1」には無い「たたき台」というフィールドを
新たに、「テーブル1」に設定します。
フィールド ID 元データ たたき台 修正後データ
テーブル テーブル1 テーブル1 テーブル1 テーブル1
のようにします。
これを基に表形式のフォームを作成し、
出来たフォームをサブフォームとします。このサブフォームの
「たたき台」フィールドの更新後処理で、
Private Sub たたき台_AfterUpdate()
Me!修正後データ = Me!たたき台
End Sub
と、設定します。
つまり、「たたき台」のデータを変更すれば、まわりまわって
「テーブル1」の「修正後データ」が変更されます。
初期値では、「テーブル1」の「修正後データ」には
何も入っていません。「元データ」をすべて変更するならば
「修正後データ」にはデータを入れておく必要はありませんが、
変更するデータがまちまちならば、一旦すべてのデータを
「修正後データ」に入れておけばいいかもしれません。
その場合には、更新クエリを実行すれば一度にデータが
はいります。更新クエリをSQLで表示すると、
UPDATE テーブル1 SET テーブル1.修正後データ = [テーブル1]![元データ];
のようになりますが、実際には、新しいクエリに「テーブル1」を表示し、
このクエリ更新クエリに変更し、フィールドの設定を、
フィールド 修正後データ
テーブル テーブル1
レコードの更新 [テーブル1]![元データ]
のように、設定します。これを適当な名前で保存し、
このクエリをクリックすれば「元データ」が「修正後データ」に
転記されます。つまり、
ID 元データ たたき台 修正後データ
1 中川 中川
2 南 南
3 佐川 佐川
この後は、変更するデータがあればフォームの「たたき台」に
データを入れて変更後は、「修正後データ」のフィールドでも
クリックすれば、「修正後データ」が変更されます。「元データ」
はそのままです。フォームを閉じても全てのフィールドのデータは
変更されずに保存されます。
こういう方法がデータの保持ということでは、安全では
と思いますが。
後は、必要に応じて「修正後データ」あるいは、「元データ」
と「修正後データ」を取り出せばいいのでは、と思いますが。
あるいは、テーブルを別名で保存し、不要ならば「たたき台」
のフィールドを削除すればいいのでは、と思いますが。
ありがとうございます。
簡単に出来るものだと思っていました。
しかし、今回、回答いただいた文を読む限り、かなり例外的なことをしようとしていることがわかりました。
その結果、なぜ今回質問したことをしなければいけないか考え直すことにしました。
本当に詳しい説明をありがとうございます。
参考にさせていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Accessでセレクタをダブルクリックで別フォームで詳細表示 3 2022/12/20 10:36
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
- その他(プログラミング・Web制作) 入力フォームへ、データを自動的に入力するプログラム。どうやって作る? 4 2023/01/16 10:24
- Excel(エクセル) Excel VBAについてです。 少しだけ知識はあるのですが、 うまくいかなかったので 質問させてい 3 2022/09/13 18:40
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
Accessのクエリの結果を、既存...
-
access2021 強制終了してしまう
-
access2021 VBA メソッドまたは...
-
Access Error3061 パラメータが...
-
Access VBA [リモートサーバー...
-
アクセスの更新クエリでカレン...
-
ACCESS VBA でのエラー解決の根...
-
AccessVBAで任意の複数リンクテ...
-
Microsoft365にAccessってあり...
-
Accessのクエリで、replace関数...
-
Excelを開く時と閉じる時に一度...
-
列が255以上のCSVファイルをAcc...
-
Accessのフォーム上のテキスト...
-
エクセルのVBAについて教えてく...
-
Access で半角スペースと全角ス...
-
MS.Access でサブフォーム付の...
-
Accessのレポートについて
-
access2019の起動が遅い
-
access2021 メッセージボックス...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
Accessのクエリで、replace関数...
-
access2021 強制終了してしまう
-
ACCESS VBA でのエラー解決の根...
-
Access VBA [リモートサーバー...
-
Accessのスプレッドシートエク...
-
Accessのレポートについて
-
access2021 VBA メソッドまたは...
-
Access Error3061 パラメータが...
-
access2019 チェックボックスと...
-
Accessのクエリの結果を、既存...
-
accessでlaccdbファイルが削除...
-
Access VBA を利用して、フォル...
-
accessデータを指定したExcel、...
-
Accessのリンクテーブルのパス...
-
列が255以上のCSVファイルをAcc...
-
Accessのクエリの印刷設定
-
Accessでレポートを印刷する時...
-
Accessフォームの配色テーマを...
-
Accessデータベースに含まれる...
おすすめ情報