'非連結フォーム[S_1]のフォームモジュール
Option Compare Database
Option Explicit
Private Const SourceTableName As String = "T_1"
'コマンドボタン[cmdUpdate]の[クリック時]イベント
Private Sub cmdUpdate_Click()
On Error GoTo Err_cmdUpdate_Click
'入力チェック処理を実行し、その結果が False だった場合
If InputCheck() = False Then
'このプロシージャを抜ける
Exit Sub
End If
Dim lngResult As VbMsgBoxResult
'実行確認ダイアログを表示し、どのボタンがクリックされたかを受け取る
lngResult = MsgBox("レコードの更新を実行しますか?", _
vbQuestion + vbYesNo + vbDefaultButton2, _
"実行確認")
'[いいえ]ボタンがクリックされた場合
If lngResult = vbNo Then
'このプロシージャを抜ける
Exit Sub
End If
Dim strSQL As String
'UPDATE 文の生成処理を実行し、その結果を変数 strSQL に渡す
strSQL = CreateUpdateStatement()
'生成に失敗した場合
If strSQL = "" Then
'このプロシージャを抜ける
Exit Sub
End If
Debug.Print strSQL
DoCmd.SetWarnings False
'SQL 文の実行
DoCmd.RunSQL strSQL
DoCmd.SetWarnings True
MsgBox "レコードが更新されました。", _
vbInformation, _
"実行完了"
'終了処理
Exit_cmdUpdate_Click:
On Error Resume Next
DoCmd.SetWarnings True
Exit Sub
'エラー時処理
Err_cmdUpdate_Click:
Dim strErrTitle As String
Dim strErrMsg As String
strErrTitle = "実行時エラー (" & Me.Name & ".cmdUpdate_Click)"
strErrMsg = Err.Number & ": " & Err.Description
Debug.Print strErrTitle
Debug.Print strErrMsg
MsgBox strErrMsg, vbCritical, strErrTitle
Resume Exit_cmdUpdate_Click
End Sub
通報 ...