基本的なIf文
このマクロを実行すると、scoreが50以上の場合に「合格です」というメッセージボックスが表示されます。
Sub BasicIfExample()
Dim score As Integer
score = 75
If score >= 50 Then
MsgBox "合格です"
End If
End Sub
Else文の使用
このマクロを実行すると、scoreが50未満の場合に「不合格です」というメッセージボックスが表示されます。
Sub IfElseExample()
Dim score As Integer
score = 45
If score >= 50 Then
MsgBox "合格です"
Else
MsgBox "不合格です"
End If
End Sub
ElseIf文の使用
このマクロを実行すると、scoreが75の場合に「良いです」というメッセージボックスが表示されます。
Sub IfElseIfExample()
Dim score As Integer
score = 75
If score >= 90 Then
MsgBox "優秀です"
ElseIf score >= 70 Then
MsgBox "良いです"
ElseIf score >= 50 Then
MsgBox "合格です"
Else
MsgBox "不合格です"
End If
End Sub
複数条件の評価
複数の条件を満たす場合
このマクロを実行すると、ageが25以上かつincomeが30000以上の場合に「ローンの申し込みが可能です」というメッセージボックスが表示されます。
Sub MultipleConditionsExample()
Dim age As Integer
Dim income As Integer
age = 30
income = 40000
If age >= 25 And income >= 30000 Then
MsgBox "ローンの申し込みが可能です"
End If
End Sub
いずれかの条件を満たす場合
このマクロを実行すると、ageが18未満または65以上の場合に「割引対象です」というメッセージボックスが表示されます。
Sub OrConditionExample()
Dim age As Integer
age = 20
If age < 18 Or age > 65 Then
MsgBox "割引対象です"
End If
End Sub
ネストされたIf文
このマクロを実行すると、scoreが80以上の場合に「非常に良いです」、50以上80未満の場合に「良いです」、50未満の場合に「不合格です」というメッセージボックスが表示されます。
Sub NestedIfExample()
Dim score As Integer
score = 85
If score >= 50 Then
If score >= 80 Then
MsgBox "非常に良いです"
Else
MsgBox "良いです"
End If
Else
MsgBox "不合格です"
End If
End Sub
セルの値のチェック
このマクロを実行すると、セルA1の値が100を超える場合にセルB1に「高い」、それ以外の場合に「低い」という値が入力されます。
Sub CheckCellValue()
If Range("A1").Value > 100 Then
Range("B1").Value = "高い"
Else
Range("B1").Value = "低い"
End If
End Sub
メッセージボックスを使用した条件分岐
このマクロを実行すると、「続行しますか?」というメッセージボックスが表示され、ユーザーが「はい」を選択すると「続行します」、それ以外の場合に「中止します」というメッセージボックスが表示されます。
Sub MessageBoxCondition()
Dim response As VbMsgBoxResult
response = MsgBox("続行しますか?", vbYesNo + vbQuestion)
If response = vbYes Then
MsgBox "続行します"
Else
MsgBox "中止します"
End If
End Sub