エクセルマニア

VBAでSelect Caseの条件分岐

TOP > VBA・マクロ >  Select Caseで条件分岐
このエントリーをはてなブックマークに追加

Select Case~ステートメント

Select Case~ は条件分岐を行う際に用いられます。他にもIf Else ステートメントが用意されています。 通常は If のほうが多く用いられますが、Selectステートメントを用いた方が簡潔な場合に用いられます。

基本構文


Select Case 変数A
    Case 値1
        変数Aが値1と等しい場合の処理
    Case 値2
        変数Aが値2と等しい場合の処理
    Case Else
       変数Aが上記以外の場合の処理
End Select

サンプルコード


Dim kotae As String
kotae = InputBox("東京ディズニーランドがある都道府県は?")

Select Case kotae
    Case "千葉"
        MsgBox "正解"
    Case "東京"
        MsgBox "残念"
    Case Else
        MsgBox "違います"
End Select


Case IS で条件比較

基本構文


Select Case 変数A
    Case Is 比較条件1
       変数Aが比較条件1を満たした場合の処理
    Case Else
       変数Aが上記以外の場合の処理
End Select

サンプルコード


Dim score As Integer
score = InputBox("点数を入力してください")

Select Case score
    Case Is >= 80
        MsgBox "大変良くできました"
    Case Is >= 50
        MsgBox "良くできました"
    Case Is >= 0
        MsgBox "がんばりましょう"
    Case Else
        MsgBox "0以上の数値を入力して下さい。"
End Select


Case X To Y で範囲指定

基本構文


Select Case 変数A
    Case 範囲1
        変数Aが範囲1の場合の処理
    Case Else
        変数Aが範囲1と範囲2なかった場合の処理
End Select

サンプルコード


Dim score As Integer
score = InputBox("点数を入力してください")

Select Case score
    Case 80 To 100
        MsgBox "大変良くできました"
    Case 50 To 79
        MsgBox "良くできました"
    Case  0 To 49
        MsgBox "がんばりましょう"
    Case Else
        MsgBox "0以上の数値を入力して下さい。"
End Select



このエントリーをはてなブックマークに追加