- VBAでの条件分岐
- 複数の条件により処理を分岐させたい場合、if文を利用するよりSelect Caseを利用した方が綺麗なコードを書くことができます
文法
Select Case 変数
Case 値1
変数=値1の場合の処理
Case 値2
変数=値2の場合の処理
Case Else
条件が満たされなかった場合の処理
End Select
サンプル
- 変数(myInt)の値によって、処理を振り分けるプログラムです
- VBAは上から順番に処理されるので、下の場合は「Case Is >= 80」が最優先の条件となります
Option Explicit
Sub mySelect()
Dim myInt As Integer
myInt = 79
Select Case myInt
Case Is >= 80
MsgBox "myIntは80以上です"
Case Is >= 60
MsgBox "myIntは60以上,79以下です"
Case Is >= 40
MsgBox "myIntは40以上,59以下です"
Case Is >= 20
MsgBox "myIntは20以上,39以下です"
Case Is >= 0
MsgBox "myIntは0以上,19以下です"
Case Else
MsgBox "整数ではありません"
End Select
End Sub