### エラー処理ステートメント

コマンド名 | 機　　能 | 備　考
--- | --- | ---
ON ERROR GOTO | エラーが発生したとき指定行番号からエラー処理ルーチンに制御を移します。 |
RESUME | エラールーチン終了後、プログラムの実行を再開します。 |
ERROR | エラーを故意に発生させます。 |

### （説明の形式）

［機能］ | 各コマンド・ステートメント・関数の働きを簡潔に記述します。
［書式］ | 各コマンド・ステートメント・関数の書き方の一般形を示します。 ［　］の中は任意に省略できます。
［解説］ | 各コマンド・ステートメント・関数の実際の使用方法、働き、注意事項を詳しく述べています。

### ON ERROR GOTO

［機能］ | エラーが発生したとき指定行番号からエラー処理ルーチンに制御を移します。
［書式］ | ON ERROR GOTO 行番号 ON ERROR GOTO ”ラベル名” 行番号：エラーが発生したとき実行させるエラー処理ルーチンの開始行番号。 ”ラベル名”：エラーが発生したとき実行させるエラー処理ルーチンのラベル名。
［解説］ | このステートメントを前もって実行していると、エラーが発生したときに、行番号で指定した行からの エラー処理ルーチン（ユーザーが設定）へ制御を移し、処理ルーチンの出口のRESUMEまでの実行を行います。 これによって、ほとんどのエラーに対し、BASICレベルで対策可能になります。なお、ON ERROR GOTO 0とすると、 このステートメントが止まり、通常のエラーが発生します。エラー処理ルーチンの中でエラーが起きた場合は、 エラーを出力してコマンド待ちにもどります。 またエラー処理ルーチンを実行中、プログラムの最後に達した場合は、NO RESUMEエラーが発生します。 END文で終った場合は、エラーが発生しないで、コマンド待ちにもどります。 普通このステートメントは、プログラムの先頭で実行しておきます。

### RESUME

［機能］ | エラールーチン終了後、プログラムの実行を再開します。
［書式］ | RESUME ［行番号］ RESUME ［”ラベル名”］ RESUME ［NEXT］ 行番号、”ラベル名”：エラー処理ルーチン終了後復帰する行番号・ラベル
［解説］ | ON ERROR GOTOで飛び込んだエラー処理ルーチンから戻る場合は、必ずRESUMEによらなければなりません。 RESUMEのみならば、エラーの発生した命令から、 RESUME NEXTならば、エラーの発生した次の命令から、 RESUME 行番号／”ラベル名”ならば、その行番号またはラベルから、 実行を再開します。 もし、RESUMEではなく、GOTOなどで、もとのプログラムに実行を移した場合は、２回目のエラーが発生したときに、 エラー処理ができなくなります。

### ERROR

［機能］ | エラーを故意に発生させます。
［書式］ | ERROR ｘ ｘ：BASICで定義されているエラーコード
［解説］ | エラーコードで指定したエラーが発生し、ERR関数にはエラーコードが、 ERL変数には そのステートメントの行番号が入ります。これによって、エラー処理ルーチンが正常に作動するか確めることが可能です。 エラー処理ルーチンのデバッグが終了したら、プログラム中より取りのぞいて下さい。

先頭に戻る