VBA Basic9
第9章 条件分岐(Select Caseステートメント)
Ifステートメントは2択の条件分岐であるのに対して、Select Caseステートメントは多岐の条件分岐になります。1つの項目の値により分岐が複数に分かれる場合に使われます。
Select Caseステートメントの記述方法は以下のとおりです。
Select Case 検査項目
Case 値1(または範囲、比較条件)
値1に該当したときの処理
Case 値2(または範囲、比較条件)
値2に該当したときの処理
Case Else
全ての値に該当しなかったときの処理
End Select
比較する値の個数は制限があるかは定かではありませんが、かなりの個数の値が比較ができるため、Ifステートメントで記述すると長くなりますが、Select Caseステートメントを使うと短い記述で済みますしにわかりやすくもなります。
前の章のIfステートメントで「優」「良」「可」「不可」の判定をしたものを、Select Caseステートメントで表すと以下のようになります。
Select Case Cells(1, 1).Value
Case Is >= 80
Cells(1, 2).Value = "優"
Case Is >= 70
Cells(1, 2).Value = "良"
Case Is >= 60
Cells(1, 2).Value = "可"
Case Else
Cells(1, 2).Value = "不可"
End Select
このような同じ項目で多岐に分岐する場合は、IfステートメントよりもSelect Caseステートメントの方がわかりやすくなります。 同じ項目で2つの分岐はIfステートメントを使い、同じ項目で3つ以上の分岐はSelect Caseステートメントを使います。
VBAで自動処理をする際には条件判定は必ず使います。条件判定のIfステートメントとSelect Caseステートメントが理解できれば、ほぼ修得したも同然です。 変数と条件分岐が理解できるようになると、プログラミングの幅が広がります。