ExcelのVBA(マクロ)で、Select~Case文の使い方 (条件式など)について紹介します。
Select Case文とは
Select Case文は、多分岐を行うための選択文です。
評価する対象がすべて同じ場合に使います。
書式①
Select Case文は、変数と同じ値を持つCase以下を”全て”実行します。
Select Case 変数 Case 値① 「変数 = 値①」である場合の処理 Case 値② 「変数 = 値②」である場合の処理 Case Else 変数が値①、値②でない場合の処理 End Select
書式②
値を範囲で指定したい場合はToを使います。
Select Case 変数 Case 値1 To 値2 変数が値1~値2の範囲内にある場合の処理 Case 値3 To 値4 変数が値3~値4の範囲内にある場合の処理 Case Else 変数が上記以外の範囲内にある場合の処理 End Select
書式③
比較演算子と条件式を使う場合はIsを使います。
Select Case 変数 Case Is 条件1 変数が条件1を満たす場合の処理 Case Is 条件2 変数が条件2を満たす場合の処理 Case Else 変数が上記以外の範囲内にある場合の処理 End Select
サンプルコード①
サンプルプログラムのソースコードです。
例①
Sub test() x = 10 Select Case x Case 5 MsgBox "xは5です" Case 10 MsgBox "xは10です" Case 15 MsgBox "xは15です" End Select End Sub
メッセージボックスには「xは10です」と表示されます。
例②
Sub test() x = 10 Select Case x Case 5 To 9 MsgBox "xは5~9です" Case 10 To 14 MsgBox "xは10~14です" Case 15 To 19 MsgBox "xは15~19です" End Select End Sub
メッセージボックスには「xは10~14です」と表示されます。
例③
Sub test() x = 10 Select Case x Case Is >= 15 MsgBox "xは5以上です" Case Is >= 10 MsgBox "xは10以上です" Case Is >= 5 MsgBox "xは15以上です" End Select End Sub
メッセージボックスには「xは10以上です」と表示されます。
関連ページ
【VBA入門】基礎から作業自動化の応用例まで解説
VBA(マクロ)で様々な処理を自動化する方法をサンプルコード付きで入門者向けにまとめました。
コメント