Select文
If文では条件式が正しいか正しくないかで二分岐をするための命令です。[リスト3]のように、書き方によっては複数の分岐も表現できますが、多岐分岐を表現するならば、Select文を使った方が便利です。
(1)Select Case 変数 Case 値 End Select
変数が指定したそれぞれの値と等しい時に処理を行います
[リスト8]「Select Case 変数 Case 値 End Select」の書き方
Select Case 変数
Case 値1
変数=値1の時の処理(複数行可能)
Case 値2
変数=値2の時の処理(複数行可能)
Case Else
変数=値1でも変数=値2でもない時の処理(複数行可能)
End Select
はじめに指定した変数の内容と値1や値2が等しい時に処理します。Case 値1…Case 値2…Case 値3と、Caseブロックは必要な数だけ書くことができます。すべての条件に合致しない場合の処理が必要な時は、Case Elseを書きます。
以下は値が10と20の時、別な処理の例題です。
[リスト9]ReiSelect1(Select文例題.xlsm)
Sub ReiSelect1()
Select Case Cells(1, 1)
Case 10
MsgBox ("値は10です")
Case 20
MsgBox ("値は20です")
Case Else
MsgBox ("値は10,20以外です ")
End Select
End Sub
(2)Select Case 変数 Case Is 条件式 End Select
変数が条件式で正しい時に処理をします
[リスト10]「Select Case 変数 Case Is 条件式 End Select」の書き方
Select Case 変数
Case Is 条件式1
変数が条件式1で正しい時の処理(複数行可能)
Case Is 条件式2
変数が条件式2で正しい時の処理(複数行可能)
Case Else
変数が条件式1でも条件式2でもなかった時の処理(複数行可能)
End Select
If文にも条件式がありました。Select文も比較演算子、論理演算子を使って条件式を書きます。If文で「a >= 5」と書く場合、Select文では「a」は変数になります。条件式にはIsの後に「>= 5」と書きます。