ACCESS 更新前にキャンセルして元の値に戻す方法

更新前にキャンセルして元の値に戻す方法

ACCESSでは、入力された値は基本的に自動でテーブルに反映されます。
しかし、中には自動反映させずにボタンを押したときだけ反映し、逆にあるボタンでは更新前の値に、戻したいという場合もあるでしょう。

今回は、ACCESSのフォームで更新前にキャンセルして元の値に戻す方法をご紹介します。


こんにちは。
はこにわガジェット (@hakoniwagadget) です。

ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは基本機能だけでも十分便利ですが、VBAを使うことで格段に使いやすいデータベースを作成可能です。
この記事ではACCESSでのVBAの使い方をご紹介していきます。

Undoを使って元に戻す

ACCESSは基本的に入力された内容は自動で反映されます。
データの格納先はテーブルですので、データ入力用フォームで入力すると自動でテーブルに反映されるということです。

その基本仕様に逆らって、フォームの入力内容を元に戻すにはUndoメソッドを利用します。

Undoメソッドは、以下の構文で利用できます。

フォーム名.Undo

フォームを指定するだけなので簡単ですね。
フォーム上の値を元に戻すだけでなく、フォームのレコードソースになっているテーブルにも入力値が反映されないようにします。

フォームの入力値を元に戻す例

それでは実際に、フォームの入力値を戻すボタンを作ってみましょう。
以下は売上データの入力フォーム「T_Undo」で、レコードソースにはテーブルを設定しています。

右下にある「戻す」ボタンで、入力内容を元に戻せるようにしてあります。
「戻す」ボタンに設定したイベントプロシージャは以下の通りです。


 Private Sub 戻す_ボタン_Click()

    Me.Undo

 End Sub
 

Meで現在のアクティブフォーム、つまり「T_Undo」を指定しています。

実際に動かしてみましょう。
フォームの値を更新します。

ここで「戻す」ボタンを押します。
すると、下記の通り元の内容に戻りました。

非常に便利で簡単に作れる機能です。

以上、更新前にキャンセルして元の値に戻す方法をご紹介しました。


ACCESSを使いこなせば、業務の効率化や自動化が実現できます。
しかし、自分でACCESSを学ぶには時間がない、難しそうで不安、という方も多いでしょう。

そんな時は、ACCESS開発歴20年以上、過去に100以上のACCESSデータベースを開発してきた私(@hakoniwagadget)にお任せください。

ACCESSの新規開発、既存のACCESSの修正、ACCESSの操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。

サービス一覧

最後までお読みいただき、ありがとうございました。