Resumeステートメント

<< エクセルVBAのIE制御に利用したステートメント一覧(VBAのIE制御入門) :前の記事

<< エクセルVBAのプログラムの制御構文(VBAの初心者入門) :前の記事

こちらでは、VBAのIE(InternetExplorer)操作に利用されたResumeステートメントの解説になります。Resumeステートメントは、プロシージャ内の指定した行へジャンプさせるステートメントです。

また、ステートメントとは「命令文」と訳されるようにコンピュータに具体的な動作を指定する最小単位のプログラムです。主にマクロの挙動を制御する構文や文法を指します。通常は1行で完結する部分を指しますが、If~Thenなど複数行にまたがる部分を意味することもあります。

目次

Resumeステートメントとは

Resumeステートメントは、エラー処理ルーチンの終了後に、プログラムの実行を再開します。

On Error Resume Next

構文Resume [0]
Resume Next
Resume line
ステートメント説明
Resume [0]エラー処理ルーチンと同じプロシージャ内でエラーが発生した場合、エラーの原因となったステートメントからプログラムの実行が再開されます。呼び出されたプロシージャ内でエラーが発生した場合、エラー処理ルーチンを含むプロシージャが最後に呼び出したステートメントからプログラムの実行が再開されます。
Resume Nextエラー処理ルーチンと同じプロシージャ内でエラーが発生した場合、エラーの原因となったステートメントの次のステートメントからプログラムの実行が再開されます。呼び出されたプロシージャ内でエラーが発生した場合、エラー処理ルーチンを含むプロシージャが最後に呼び出したステートメントの次のステートメント、または On Error Resume Next ステートメントからプログラムの実行が再開されます。
Resume line引数 line に指定した行からプログラムの実行が再開されます。引数 line は必ず指定します。引数 line には行ラベルまたは行番号を指定します。また、エラー処理ルーチンと同じプロシージャに指定する必要があります。

エラー処理ルーチン以外の場所で Resume ステートメントを使用すると、エラーが発生します。

Resumeステートメントのサンプルコード


Sub sample()

    On Error Resume Next

    Dim i As Integer
    
    i = "VBA"
    
    MsgBox "変数iは" & i & "です。"

End Sub

※ドラッグ(スワイプ)すると全体を確認できます。

実行結果

On Error Resume Nextの結果

解説

sampleのSubステートメントは引数設定はされていません。最初にOn Error Resume Nextステートメントを設定しています。エラーの発生が予測される処理の前に記述します。次にDimステートメント変数iに整数型(Integer)を宣言しています。 次に変数i」に文字列の「VBA」が格納されていますが、変数iには整数しか格納できませんので、この時点で本来であれば実行時エラーが発生しますが、On Error Resume Nextステートメントによりエラーが発生した次の処理から実行再開します。

エクセルVBAのプログラム制御構文一覧

次の記事: エクセルVBAのデバッグについて >>

Excel VBAでIEを思いのままに操作できるプログラミング術 Excel 2013/2010/2007/2003対応

IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。

ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください。

VBAのIE操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE操作にも挑戦してみてください。

目次

VBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。