条件分岐について
今回の目標
- 条件分岐とは何かを理解する
説明
本章の題材である条件分岐はExcelVBAを使用するに当たって必須です。
まずは、条件分岐とは何かを学んでみましょう。
条件分岐とは
『一定条件下でどのような処理を行うか』のことです。例えば、「セルA1(テストの点数)が30未満なら"赤点"と入力する」です。
要するに「~なら~する」という処理をしたいときに使用します。
図にすると下の通りになります。なお、下図の矢印でプログラムの動きを書いたものをフローチャートと呼びます。
ExcelVBAの条件分岐
ExcelVBAでは、主に2種類の構文による分岐があります。
各項目の詳細については次章より説明します。
-
If文・・・使用頻度が高く、マクロを作成する場合は必須です。
リンク:If文の使い方 -
Select Case文・・・If文より使用頻度は低めですが、覚えておきましょう。
リンク:Select Caseの使い方
余談ですが、vbaでは三項演算子がありません。
コラム
このコラムは他のプログラミング(スクリプト)言語を勉強したことがある方のみ、お読みください。
ExcelVBA には、Switch文はなく、代わりにパワーアップ(?)した Select Case文が存在します。
この Select Case文は文字列や数値の範囲のチェックも可能です。
なお、ExcelVBAには、Switch関数があり、Javaなどの Switch文と異なります。
確認テスト
次の問いに答えなさい。
-
条件分岐とは次のどれに該当するか。
処理を繰り返す。
一定条件下の場合の処理を行う。
-
処理を終了させる。
【解答】
B
【解説】
下記の通りです。
処理を繰り返す。
→反復処理(ループ)です。次章以降に説明します。一定条件下の場合の処理を行う。
→条件分岐です。これが正解となります。処理を終了させる。
→終了処理です。
命令処理を記載しなくても終了します。
([End]と記載すると、以降の命令を無視して終了します)