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



最終更新日:2013-02-18

第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 GoTo 行ラベル

On Error Resume Next


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

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



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


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





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

第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

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

空白セルを正しく判定する方法2|ExcelマクロVBA技術解説(5月6日)
フルパスをディレクトリ、ファイル名、拡張子に分ける|ExcelマクロVBA技術解説(4月15日)
テキストボックスの各種イベント|Excelユーザーフォーム入門(4月9日)
フォルダ(サブフォルダも全て)削除する、Optionでファイルのみ削除|ExcelマクロVBAサンプル集(4月4日)
最後の空白(や指定文字)以降の文字を取り出す|エクセル関数超技(3月26日)
先頭の数値、最後の数値を取り出す|エクセル関数超技(3月26日)
Excelファイルを開かずにシート名をチェック|ExcelマクロVBAサンプル集(3月23日)
数式の参照しているセルを取得する|ExcelマクロVBAサンプル集(3月18日)
CSVの読み込み方法(改の改)|ExcelマクロVBAサンプル集(3月17日)
変数とプロシージャーの命名について|ExcelマクロVBA技術解説(2月12日)

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

1.最終行の取得(End,Rows.Count)|ExcelマクロVBA入門
2.ひらがな⇔カタカナの変換|エクセル基本操作
3.RangeとCellsの使い方|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|ExcelマクロVBA入門
5.徹底解説(VLOOKUP,MATCH,INDEX,OFFSET)|エクセル関数超技
6.変数とデータ型(Dim)|ExcelマクロVBA入門
7.セルの参照範囲を可変にする(OFFSET,COUNTA,MATCH)|エクセル関数超技
8.セルのコピー&値の貼り付け(PasteSpecial)|ExcelマクロVBA入門
9.CSVの読み込み方法|ExcelマクロVBAサンプル集
10.定数と型宣言文字(Const)|ExcelマクロVBA入門



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

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


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




    ↑ PAGE TOP