基本的なSelect Case文
このマクロを実行すると、gradeが”B”の場合に”Good”というメッセージボックスが表示されます。
Sub BasicCaseExample()
Dim grade As String
grade = "B"
Select Case grade
Case "A"
MsgBox "Excellent"
Case "B"
MsgBox "Good"
Case "C"
MsgBox "Average"
Case "D"
MsgBox "Below Average"
Case "F"
MsgBox "Fail"
Case Else
MsgBox "Invalid Grade"
End Select
End Sub
数値の範囲を評価する
このマクロを実行すると、scoreが75の場合に”良いです”というメッセージボックスが表示されます。
Sub CaseRangeExample()
Dim score As Integer
score = 75
Select Case score
Case Is >= 90
MsgBox "優秀です"
Case 70 To 89
MsgBox "良いです"
Case 50 To 69
MsgBox "合格です"
Case Else
MsgBox "不合格です"
End Select
End Sub
文字列を評価する
このマクロを実行すると、dayが”Monday”の場合に”Weekday”というメッセージボックスが表示されます。
Sub CaseStringExample()
Dim day As String
day = "Monday"
Select Case day
Case "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"
MsgBox "Weekday"
Case "Saturday", "Sunday"
MsgBox "Weekend"
Case Else
MsgBox "Invalid day"
End Select
End Sub
複数の値を評価する
このマクロを実行すると、colorが”Red”の場合に”Primary Color”というメッセージボックスが表示されます。
Sub CaseMultipleValuesExample()
Dim color As String
color = "Red"
Select Case color
Case "Red", "Blue", "Green"
MsgBox "Primary Color"
Case "Yellow", "Purple", "Cyan"
MsgBox "Secondary Color"
Case Else
MsgBox "Other Color"
End Select
End Sub
複数の条件を含むCase文
このマクロを実行すると、ageが20の場合に”Adult”というメッセージボックスが表示されます。
Sub CaseMultipleConditionsExample()
Dim age As Integer
age = 20
Select Case age
Case 0 To 12
MsgBox "Child"
Case 13 To 19
MsgBox "Teenager"
Case 20 To 64
MsgBox "Adult"
Case Is >= 65
MsgBox "Senior"
Case Else
MsgBox "Invalid age"
End Select
End Sub
ネストされたCase文
このマクロを実行すると、categoryが”Fruit”でitemが”Apple”の場合に”This is an Apple”というメッセージボックスが表示されます。
Sub NestedCaseExample()
Dim category As String
Dim item As String
category = "Fruit"
item = "Apple"
Select Case category
Case "Fruit"
Select Case item
Case "Apple"
MsgBox "This is an Apple"
Case "Banana"
MsgBox "This is a Banana"
Case Else
MsgBox "Unknown Fruit"
End Select
Case "Vegetable"
Select Case item
Case "Carrot"
MsgBox "This is a Carrot"
Case "Broccoli"
MsgBox "This is Broccoli"
Case Else
MsgBox "Unknown Vegetable"
End Select
Case Else
MsgBox "Unknown Category"
End Select
End Sub
セルの値を評価する
このマクロを実行すると、セルA1の値が”Yes”の場合に”You selected Yes”というメッセージボックスが表示されます。
Sub CaseCellValueExample()
Dim cellValue As String
cellValue = Range("A1").Value
Select Case cellValue
Case "Yes"
MsgBox "You selected Yes"
Case "No"
MsgBox "You selected No"
Case "Maybe"
MsgBox "You selected Maybe"
Case Else
MsgBox "Invalid selection"
End Select
End Sub