即効テクニック

コーディング・デバッグ

保存して終了

(Access)
●概要●
DoCmdオブジェクトのCloseメソッドを使ってテーブルなどの編集後にその内容を保存して終了させます。
Closeメソッドの書式は以下のとおりで、DoCmd.Close [objecttype, objectname], [save]
第1引数のobjecttypeにはテーブルまたはクエリなどを表す組み込み定数を指定します。
第3引数のsaveに以下のいずれかの定数を指定します。
 acSaveNo
 acSavePrompt (既定値)
 
この内、acSaveYesを使用すると保存して終了となり、保存の確認のプロンプトは表示されません。サンプルコードでは「Northwind.mdb」の「社員」テーブルを保存して閉じています。
●サンプルコード●
Public Sub 終了()
  Dim Response As Integer
  Response = MsgBox("処理を終了しますか?", vbYesNo + vbQuestion, "終了確認")
  Select Case Response
  Case 6
    DoCmd.Close acTable, "社員", acSaveYes
  Case 7
    MsgBox "処理を続けます"
  End Select
●動作確認●
「社員」テーブルが保存されて終了していることを確認してください。

●補足●
保存のみを行う場合は以下のようなsaveメソッドを使用します。
DoCmd.Save acTable, "社員"