【ACCESS VBA】レコードの更新をキャンセルして元に戻すには?

訪問して頂きありがとうございます。まさふくろーです。

この記事では、レコードの更新をキャンセルして元に戻す方法をご紹介します。

レコードの更新をキャンセルして元に戻す

サンプルデータ

伝票No. 日付 地区名 担当者 商品名 単価 数量
101 2019/9/1 東京 金田良子 事例で学ぶ情報セキュリティ 2000 60
102 2019/9/2 栃木 山崎健一 自信がつくビジネスマナー 1700 55
103 2019/9/3 埼玉 高梨美智子 プレゼンテーションテクニック 1800 30
104 2019/9/9 神奈川 高梨美智子 デジタルカメラ活用 2000 60
105 2019/9/5 群馬 山崎健一 事例で学ぶ個人情報保護 1000 30
106 2019/9/6 千葉 近藤次郎 はじめてでもわかるJava入門 2400 75
107 2019/9/7 山梨 金田良子 Macromedia Flash 8 2800 80
108 2019/9/8 神奈川 高梨美智子 LANの導入・構築・管理 2500 10
109 2019/9/9 東京 金田良子 事例で学ぶ情報セキュリティ 2000 15
110 2019/9/10 長野 山田修 自信がつくビジネスマナー 1700 15
111 2019/9/11 埼玉 高梨美智子 プレゼンテーションテクニック 1800 15
112 2019/9/12 新潟 牧野聡子 デジタルカメラ活用 2000 60
113 2019/9/13 東京 金田良子 事例で学ぶ個人情報保護 1000 35
114 2019/9/19 福島 牧野聡子 事例で学ぶ情報セキュリティ 2000 60
115 2019/9/15 埼玉 高梨美智子 自信がつくビジネスマナー 1700 30
116 2019/9/16 福島 牧野聡子 プレゼンテーションテクニック 1800 10
117 2019/9/17 東京 金田良子 デジタルカメラ活用 2000 10
118 2019/9/18 静岡 山田修 事例で学ぶ個人情報保護 1000 50
119 2019/9/19 茨城 近藤次郎 事例で学ぶ情報セキュリティ 2000 60
120 2019/9/20 長野 山田修 自信がつくビジネスマナー 1700 20
121 2019/9/21 埼玉 高梨美智子 プレゼンテーションテクニック 1800 30
122 2019/9/22 神奈川 高梨美智子 デジタルカメラ活用 2000 60
123 2019/9/23 長野 山田修 事例で学ぶ情報セキュリティ 2000 20
124 2019/9/29 千葉 近藤次郎 自信がつくビジネスマナー 1700 60
125 2019/9/25 新潟 牧野聡子 プレゼンテーションテクニック 1800 10
126 2019/9/26 茨城 近藤次郎 デジタルカメラ活用 2000 15
127 2019/9/27 東京 金田良子 事例で学ぶ個人情報保護 1000 15
128 2019/9/28 栃木 山崎健一 はじめてでもわかるJava入門 2400 45
129 2019/9/29 埼玉 高梨美智子 Macromedia Flash 8 2800 50

使用するイベント

BeforeUpdateイベント

object.BeforeUpdate(Cancel)

説明
BeforeUpdateイベントは、コントロールまたはレコードで変更されたデータが更新される直前に発生します。
指定項目 必須 説明
Cancel
BeforeUpdateイベントを発生させるかどうかを設定します
「True」を設定すると、BeforeUpdateイベントが取り消されます。

フォームのBeforeUpdateイベントプロシージャの作成

ナビゲーションウィンドウから、対象のフォームを選択し、右クリックします。

 

ショートカットメニューから「デザインビュー」を選択します。

 

フォーム上で、右クリックします。

 

ショートカットメニューから「プロパティ」を選択します。

 

プロパティシートにて、①「フォーム」を選択⇒②「イベント」タブをクリック⇒③「...」をクリックします。

 

①「コードビルダー」を選択⇒②「OK」をクリックします。

 

すると、フォームのBeforeUpdateイベントプロシージャが作成されます。

 

使用するメソッド

RunCommandメソッド

DoCmd.RunCommand(Command)

説明
RunCommandメソッドは、組み込みコマンドを実行します。
指定項目 必須 説明
Command

実行するコマンドを定数で指定します。
「元に戻す」処理を行うには、「acCmdUndo」を指定します。

サンプルプログラム

1 データが更新される直前に、以下処理を行います。
5 メッセージ「更新してもよろしいでしょうか?」を表示します。
7 「いいえ」が押された場合、以下処理を行います。
9 BeforeUpdateイベントを取り消します。
11 変更前の状態に戻します。

実行結果

関連記事

連結フォームを作成する

【ACCESS VBA】連結フォームを作成するには?

最後まで読んでいただき、ありがとうございました!