VBAのプログラムの制御構文

<< プロシージャの適用範囲(スコープ) :前の記事

前回は、プロシージャの適用範囲(スコープ)について詳しく解説しました。ここまででプログラムの基本はマスターできたかと思います。今回は、プログラムの制御構文について解説します。

目次

制御構文について

実際にプログラムを作成する際に必ず利用するのは制御構文です。制御構文はプログラムの流れを必要に応じて変える時に利用されます。プログラムは上から順に処理をしていきますが、そのままでは単純なプログラムしか作成することができません。
状況に応じて、処理の流れの変更や同じ処理の繰り返しを行うこともあります。そのような場合に利用されるのが、制御構文です。制御構文には、いくつか種類がありますので、1つずつ理解していきましょう。

無限ループについて

制御構文は非常に便利な構文ですが、使い方を誤れば永久に処理を繰り返す無限ループに陥る場合もあります。無限ループに陥った場合は、通常の無限ループであれば、Escキーで中断することができますが、メッセージボックスが表示されるような無限ループでは、この方法では中断することができません。
その場合は、Ctrlキー+Pauseキーで中断することができます。テストをする場合は、それぞれの制御構文を正しく理解した上で、十分気をつけてプログラミングするようにしましょう。

If~Then~Elseステートメント

If~Then~Elseステートメントは「もし~だったら~する」といった簡単な条件分岐を作成する制御構文です。最小条件分岐は「成立した場合」と「成立しなかった場合」の2通りとなります。もちろん、If~Then~Elseステートメントに演算子や複数利用することで複数の分岐を作成することも可能です。

Select Caseステートメント

If~Then~Elseステートメントで複数条件分岐させることもできますが、こちらは条件分岐に条件もありコードが複雑になってしまうこともあります。簡単な複数分岐を行う場合は、Select Caseステートメントを利用します。条件分岐が多くなる場合は、簡単で分かりやすいコードとなっていますので、とても良いです。

For~Nextステートメント

For~Nextステートメントは、一定の条件下において処理を繰り返したいときに利用します。こちらは指定した回数だけ繰り返します。

For Each~Nextステートメント

For Each~Nextステートメントも、一定の条件下において処理を繰り返したいときに利用します。こちらは指定した配列の数だけ繰り返します。

Do~Loopステートメント

Do~Loopステートメントも、一定の条件下において処理を繰り返したいときに利用しますが、こちらは指定した条件が満たされる間、もしくは指定した条件が満たされるまで処理を繰り返します。こちらは指定した配列の数だけ繰り返します。

GoToステートメント

GoToステートメントは処理を強制的に移動させることができます。

次の記事: If~Then~Elseステートメント >>

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には様々な機能が用意されていますので一度ご確認ください。