読者です 読者をやめる 読者になる 読者になる

Selection for my Life

いま、僕にできること。

エクセルVBA 実行したSQLが正常に処理されない場合

実行したSQLが正常に処理されない場合

エクセルVBASQL利用していると、SQLのエラーを処理したい場合があります。
今回は、簡単にエラーだったらの処理をメモ代わりに。笑

'//SQLへ接続
Dim cn As ADODB.Connection
Dim SQLstr As String
Dim rs As Recordset

Set cn = New ADODB.Connection
cn.ConnectionString = "Data Source=ODBC設定;" & "User ID=[id];" & "Password=パ[pw]"
cn.Open

    SQLstr = "SQL"  ←実行するSQL
    Set rs = cn.Execute(SQLstr)

    If Err.Number <> 0 Then
        '// SQLがエラーの場合ログに残す
        Call Log("SQL ERROR") ←Logというログに記録する関数は自分で記載
    End If

SQLでDBにデータを登録する際に使うことが多いです。
通常はSQLが正常終了するのですが、何か問題が発生して、SQLが失敗しても、ログに記録だけ残して、次の処理へ進みたいときに使用してます。