![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
access2003にて登録フォームを作成しています。
このフォーム内に入力したデータを登録ボタンを押し、「登録しますか」のメッセージに
「いいえ」とすれば保存せずにこのフォームを閉じる。
「キャンセル」とすれば保存せずにフォームに戻る。
「はい」とすれば保存して閉じたいです。
しかし、以下の式を実行すると
「いいえ」はバッチリ希望通りに動くのですが、
「キャンセル」をすると保存されてフォームに戻り、
「はい」とすると保存されずにフォームが閉じられてしまいます。
何がまずいのでしょうか・・・。
-----
Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim Ret As Integer
Ret = MsgBox("登録しますか?" & vbCrLf & " " & vbCrLf & "「いいえ」を選択すると保存せず閉じます", vbYesNoCancel)
'「いいえ」を選択したら、保存せずに閉じる
If Ret = vbNo Then
DoCmd.Close acForm, "振返りデータ", acSaveNo
'「キャンセル」を選択したら、保存せずにフォームに戻る
Else
If Ret = vbCancel Then
Else
DoCmd.Close acForm, "振返りデータ", acSaveYes
End If
End If
End Sub
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_06.png?8acaa2e)
No.1ベストアンサー
- 回答日時:
acSaveYes の意味は、フォームの変更をメッセージ無しで保存する、ということですよ。
入力したデータを登録するのとは、全然関係ないオプションです。
典型的には、並べ替えの順序を保存しておくとか、フィルターを保存しておくとか、そんなことに使うのではないでしょうか。
このコードでは BeforeUpdate イベントでフォームを閉じることになっていますから、レコードが保存される前に、フォームが閉じるのは、正常にコードが走っていることになると思います。
入力したデータを保存するなら、私なら、非連結のフォームを作って、「登録する」を押したら、そのフォームに記入された数値をVBAのプロシージャで所定のテーブルに書き写していく、というふうにします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) Excel VBA 同じ名前のフォルダがあれば作成したブックを格納するマクロをつくりたい 2 2023/01/16 16:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Googleマップに保存した地点が...
-
OPPO A54 5Gの初期設定
-
PDFファイルの倍率を変えて保存...
-
クラウドのデータ保存について
-
Vistaで焼いたCDの写真がXpで...
-
複数のブックを新しいブックのS...
-
サポートされたファイル形式お...
-
スマホでtxtファイルを編集する...
-
iosのshortcutアプリでmp3を連...
-
ガラケーからPCへの写真の取り込み
-
【VBA】マクロの入ったファイル...
-
SDカードの中に入ってる小さい...
-
抗がん剤投与後のフラッシュ
-
ビデオファイルのプロパティの...
-
2枚、マイクロSDカードを入...
-
ダメージエフェクトの仕方...
-
RaspberryPi にUSBメモリを接続...
-
画像の修正
-
Accessのフォームから特定のフ...
-
シェイプ上で矢印キー(右、左...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Googleマップに保存した地点が...
-
PDFファイルの倍率を変えて保存...
-
alert で文字の色を変えたい
-
至急エクセルで最小限の保存が...
-
プリントスクリーンで保存した...
-
ムービーメーカー 動画が小さ...
-
小計の列が「0」の行は非表示で...
-
Vistaで焼いたCDの写真がXpで...
-
word2000で字を計数後にその窓...
-
パワーポイント2007で上書...
-
Vistaのエクスペリエンスインデ...
-
USBメモリ
-
入力データの保存方法
-
過去の写真や動画の長期保存(...
-
強制終了されたファイルを復元...
-
プレーステーション ストアー...
-
ポケナビGPSのデータを地図ソフ...
-
Macアドレスブックのデータ保存...
-
オートCADのハッチング
-
イベントログの保存先の変更方法
おすすめ情報