エラー処理:エラーハンドラ On Error Gotoステートメント

VB2008での、On Error Gotoエラー処理の説明と使用例サンプルです。

エラー処理へ



エラー(例外)が発生する可能性がある処理の前に、On Error GoToステートメントを記入しておきます。
エラーが発生すると、指定したラベル名か行番号へ処理を移します。
エラーが発生しない場合の対処として、ラベル名の前に、「Exit Sub か Exit Function」でプロシージャを抜けるようにします。

■構文
On Error GoTo ラベル名又は、行番号

■構成

sub プロシージャ( )
On Error GoTo ラベル名
 処理コード
 exit sub

ラベル名:
 エラー処理コード
End Sub

function プロシージャ( )
On Error GoTo ラベル名
 処理コード
 exit function

ラベル名:
 エラー処理コード
End Sub

■ エラーの発生した画面
エラーが発生するとメッセージが表示されます。
「エラーが発生しました。String"VB2008"から型'Integer'への変換は無効です。」
エラー処理対策ソフト

■ 実行コード

'ビルドエラーにならないようにOFFにしておく
Option Strict Off

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim n1 As Integer
Dim s1 As String

'エラーハンドラ
On Error GoTo ErrExit
n1 = 100
s1 = "VB2008"
'ここでエラー発生
n1 = s1

Exit Sub
ErrExit:
'エラー内容を表示
MsgBox("エラーが発生しました。" & vbNewLine & Err.Description)

End Sub
End Class


Visual Basic 2008 Express Edition実践入門