独自のエラーメッセージを表示する(On Errorステートメント)
 アプリケーションの実行中に、何らかのエラーが発生した場合、処理が中断され
エラーメッセージが表示されます。

 エラー発生時に独自のエラーメッセージを表示するためには、エラーを制御する処理
(エラー処理ルーチン)を用意します。

 次のサンプルプロシージャは、On Errorステートメントを使って、エラーが発生
したらメッセージボックスを表示して処理を終了しています。

 On Errorステートメントは、エラー処理ルーチンを有効にし、プロシージャ内での
エラー処理ルーチンの位置を指定します。

● サンプル ●

Sub Sample()
    Dim i As Integer
    
    On Error GoTo Err_Msg
    
    i = 1 / 0

    Exit Sub

Err_Msg:
    MsgBox "エラーが発生しました"
End Sub

 サンプルプロシージャでは、0で除算を行うのでエラーが発生します。
 
● 詳細 ●

 エラーが発生すると、On Errorステートメントで指定された「Err_Msg」という
行ラベルで設定したエラー処理ルーチンにプログラムの制御が移り、エラー処理
(メッセージボックスの表示)がおこなわれます。
 On Errorステートメントには、次の構文があります。

<構文1> On Error GoTo line

 引数lineに指定した行から始まるエラー処理ルーチンを有効にします。引数lineは
必ず指定します。引数line には任意の行ラベルまたは行番号を指定します。実行時
エラーが生成されると、ここで設定したエラー処理ルーチンにプログラムの制御が移り、
エラー処理ルーチンがアクティブになります。引数lineに指定する行は、On Error
ステートメントと同じプロシージャ内に存在しなければなりません。この制限に従わなければ、
コンパイル時エラーが発生します。 

<構文2> On Error Resume Next

 実行時エラーが発生してもプログラムを中断せず、エラーが発生したステートメントの
次のステートメントから実行を継続します。オブジェクトを操作する場合は、On Error GoTo
ステートメントではなく、このステートメントを使ってください。 

<構文3> On Error GoTo 0

 現在のプロシージャに含まれる使用可能なエラー処理ルーチンを無効にします。 

Access2000



戻る


Excel Word Access VBA! モーグ