タイトル : Re^2: エラーになっても処理を続行させたい 投稿日 : 2008/07/27(Sun) 00:08 投稿者 : eco
回答ありがとうございます。 Visual Basic のエラー処理をもう一度確認します。 > > 「err_C: > > ' OraSession.rollback > > errmsg = "データの登録に失敗しました。<< エラー内容 >>" & Err.Description > > fileNo = FreeFile 'ファイル番号の取得 > > Open "ERRLOG.TXT" For Append As #fileNo 'ファイルを追加モードで開く > > Print #fileNo, errmsg & vbCrLf 'ファイルへ書き込む > > Close #fileNo」 > プロシージャ内であれば、どこに記述しても構いません。 > > ただし、この処理がエラー処理以外の目的で実行されることが無いようにするため、 > (1) Exit Sub (End Sub では無い)よりも後の行に書く。 > (2) If ステートメント等で、Err.Number によるエラーコード判定を併用する。 > (3) GoTo ステートメントなどを併用して、通常処理時にはエラー処理ブロックを > 通過させないようにしておく。 > などといった対処を施す必要があります。(一般的には 案1 が採用されます) 今回Loopの前に記述する必要があるように思えるのですが、 そうなるとExit Subは記述できないですよね。 特にOn ERROR Go Toにこだわる必要がなければ、On Error Resume Nextで If分岐でエラーコード判定を行ったほうがすっきり書けますかね・・・? |