ExcelマクロVBA入門 | 第60回.エラー処理(On Error) | Excelマクロの基礎と応用、エクセルVBAの入門・初級・初心者向け解説



最終更新日:2018-01-27

第60回.エラー処理(On Error)


マクロを実行していると、エラーメッセージが表示されマクロ実行が停止してしまう事があります、

マクロがエラー停止しては自動化の目的が達成されませんので、エラー停止しないようにしなければなりません。


マクロ実行において、以下のようなメッセージが表示される事があります。




表示されるメッセージ内容は、その時々で変わりますが、

まあ、大抵は意味不明な日本語ですね(笑)

これは、マクロの記述の中に、実行不能な事が書かれていて、エラーが発生しているのです。

しかし、時にはエラーが発生しても処理を続けたいとか、

エラー発生したら、それに対処する為の処理をしたいとか、

そのような事が必要な場合もあります。


エラー対処のステートメント

On Error GoTo 行ラベル

On Error Resume Next

On Error GoTo 0



On Error GoTo 行ラベル

 エラーが発生すると、行ラベルの位置に制御が移ります。



On Error Resume Next

エラーが発生しても、エラーが発生したステートメントの次のステートメントから実行を継続します。

オブジェクトを操作する場合は、On Error GoTo ステートメントではなく、このステートメントを使ってください。



On Error GoTo 0

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

On Error GoTo 0 ステートメントを指定していない場合、プロシージャの終了時に自動的に無効になります。



On Error の有効範囲

On Error GoTo 行ラベル

On Error Resume Next

は、このステートメント以降、

On Error GoTo 0が出てくるか、プロシージャが終了するまでが有効範囲となります。



On Error GoTo 行ラベルOn Error Resume Nextについては、

次回以降で詳細を説明します。


実行時エラー関連記事





同じテーマ「マクロVBA入門」の記事

第57回.Applicationのプロパティ
第58回.コレクションとは
第59回.コレクション処理(For Each)
第61回.「On Error Go To」と「Exit Sub」
第62回.「On Error Resume Next」とErrオブジェクト
第63回.ブックを開く(Open)
第64回.ブックを閉じる・保存(Close,Save,SaveAs)
第65回.シートの挿入、名前の変更(Add,Name)
第66回.シートのコピー・移動・削除(Copy,Move,Delete)
第67回.総合練習問題7

新着記事 ・・・新着記事一覧を見る

VBAを定型文で覚えよう|ExcelマクロVBA技術解説(3月26日)
VBAスタンダード試験対策まとめ|MOS VBAエキスパート対策(3月16日)
ユーザーフォームとメニューの操作|MOS VBAエキスパート対策(3月14日)
ファイルの操作|MOS VBAエキスパート対策(3月14日)
ユーザーフォームの各種イベント|Excelユーザーフォーム(3月13日)
レジストリの操作|MOS VBAエキスパート対策(3月12日)
変数と配列|MOS VBAエキスパート対策(3月12日)
Colorプロパティの設定値一覧|VBA技術解説(3月12日)
APIとOLEオートメーション|MOS VBAエキスパート対策(3月11日)
エラーへの対処|MOS VBAエキスパート対策(3月10日)

アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.変数とデータ型(Dim)|ExcelマクロVBA入門
6.ひらがな⇔カタカナの変換|エクセル基本操作
7.マクロって何?VBAって何?|ExcelマクロVBA入門
8.定数と型宣言文字(Const)|ExcelマクロVBA入門
9.とにかく書いて見よう(Sub,End Sub)|VBA入門
10.繰り返し処理(For Next)|ExcelマクロVBA入門



  • >
  • >
  • >
  • エラー処理(On Error)

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。





    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。

    本文下部へ

    ↑ PAGE TOP