VBA 条件分岐Select Case 条件分岐Select Case 構文 Select Case 変数 Case 値1 変数=値1の場合の処理 Case 値2 変数=値2の場合の処理 Case Else 変数=値1、変数=値2を満たさなかった場合の処理 End Select サンプル Sub test() ’上中下旬判定用 Dim MyDate As Integer MyDate = InputBox("ひにちを入力してください") Select Case MyDate Case 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 MsgBox "上旬です。" Case 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 MsgBox "中旬です。" Case 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 MsgBox "下旬です。" Case Else MsgBox "入力が不正です。" End Select End Sub Isで比較条件を指定する場合 構文 Case Is > 値 あるいは Case Is < 値 Sub test2() Dim Score As Integer Score = InputBox("点数を入力してください") Select Case Score Case Is >= 90 MsgBox "秀(S)です。" Case Is >= 80 MsgBox "優(A)です。" Case Is >= 70 MsgBox "良(B)です。" Case Is >= 60 MsgBox "可(C)です。" Case Else MsgBox "不合格(F)です。" End Select End Sub 範囲による分岐処理 Select Case 変数 Case 範囲1 変数が範囲1の場合の処理 Case 範囲2 変数が範囲2の場合の処理 Case Else 変数が範囲1と範囲2なかった場合の処理 End Select サンプル Sub test2() Dim MyAge As Integer MyAge = InputBox("年齢を入力してください") Select Case MyAge Case 0 To 4 MsgBox "幼年です。" Case 5 To 14 MsgBox "少年です。" Case 15 To 29 MsgBox "青年です。" Case 30 To 39 MsgBox "壮年です。" Case 40 To 54 MsgBox "中年です。" Case 55 To 64 MsgBox "熟年です。" Case 65 To 69 MsgBox "高年です。" Case Else MsgBox "老年です。" End Select End Sub ― ― ― ― ― ― ― ― ― ― → Excel VBA基礎入門もくじ へ戻る