1.On Error ステートメントを使ったエラー処理(10_Err_01) (旧、SampleNo.070) |
1.On Error Resume Next ステートメントの使用例 2.On Error GoTo ステートメントの使用例 3.On Error GoTo 0 ・ On Error GoTo -1 の使用例 4. 5. 6. 尚、これらのエラー処理は、VB6.0 時代のもので、.NET では[例外処理]と呼ばれる機能を使ってエラー処理をします。 従って、次に紹介する[構造化例外処理例]の方でエラー処理をするようにして下さい。 |
下記プログラムコードに関する補足・注意事項 動作確認:Windows 8.1 (Windows 7) / VB2013 (VB2010) / Framework 4.5.1 / 対象の CPU:x86 Option :[Compare Text] [Explicit On] [Infer On] [Strict On] Imports :追加なし 参照設定:追加なし その他 :Button1 〜 Button2 : このサンプル等の内容を無断で転載、掲載、配布する事はお断りします。(私の修正・改訂・削除等が及ばなくなるので) 必要ならリンクをはるようにして下さい。(引用の場合は引用元のリンクを明記して下さい) |
1.On Error Resume Next ステートメントの使用例(070) |
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 'On Error Resume Next ステートメントの使用例 'ランタイムエラーが発生すると、エラーが発生したステートメントの '直後のステートメントに制御が移り、そのステートメントから実行が '継続されます。オブジェクトにアクセスする場合は、On Error GoTo 'ではなく、この形式を使用してください。 On Error Resume Next '以下エラーの起きそうな処理(又は通常の処理)を記入 '存在しないファイルを開きエラーを発生させる Dim sr As New System.IO.StreamReader("test.txt", System.Text.Encoding.Default) MessageBox.Show("エラーが発生しても次の処理をします。") 'エラーが発生した事を確認する If Err.Number <> 0 Then 'エラーの内容を表示 MessageBox.Show(Err.Description, "エラーが発生しました。") 'Err オブジェクトのすべてのプロパティの設定値をクリアします Err.Clear() End If 'On Error Resume Next ステートメントは、ランタイムエラーを発生させた 'ステートメントの直後にあるステートメント、または、On Error Resume Next 'ステートメントが入っているプロシージャから最後に呼び出しを行ったステートメントの '直後のステートメントを使用して、実行を継続させます。 'これにより、ランタイムエラーが発生しても処理を続けることができます。 End Sub |
2.On Error GoTo ステートメントの使用例(070) |
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click 'On Error GoTo ステートメントの使用例 'On Error GoTo ステートメントは、例外クラスに関係なく 'すべてのエラーをトラップします。 On Error GoTo ErrorHandler '以下エラーの起きそうな処理(又は通常の処理)を記入 '存在しないファイルを開きエラーを発生させる Dim sr As New System.IO.StreamReader("test.txt", System.Text.Encoding.Default) MessageBox.Show("エラー処理により復帰しました。") Exit Sub ErrorHandler: 'エラー処理コードを記入 'エラーが発生した事を確認する If Err.Number <> 0 Then 'エラーの内容を表示 MessageBox.Show(Err.Description) 'Err オブジェクトのすべてのプロパティの設定値をクリアします Err.Clear() End If 'エラーが発生したステートメントの直後のステートメントに制御を移したい場合 Resume Next End Sub |
3.On Error GoTo 0 ・ On Error GoTo -1 の使用例 |
On Error GoTo 0 現在のプロシージャで有効になっていたエラーハンドラーを無効にし、Nothing にリセットされます。 On Error GoTo -1 現在のプロシージャで有効になっていた例外を無効にし、Nothing にリセットされます。 等も使用できます。 詳しくは、ヘルプで On Error を調べて下さい。 |
4. |
5. |
6. |
検索キーワード及びサンプルコードの別名(機能名) |