Visual Basic 中学校 > VB.NET サンプル >
Ifを使用した条件判断
ここではIfを使用した条件判断のサンプルを紹介します。
Select Caseを使用した条件判断のサンプルはSelect Caseを使用した条件判断を参照してください。
条件判断についての説明は初級講座第6回 条件判断を参照してください。
以下の例では変数Xの値が5のときだけメッセージを表示する。
If X = 5 Then
MsgBox("Xは5です。")
End If■リスト1
以下の例ではButton1.EnabledがTrueのときだけメッセージを表示する。
If Button1.Enabled Then
MsgBox("Button1は使用可能です。")
End If■リスト2
メモ:この例ではButton1.Enabled自体がTrueまたはFalseを表しているのでIf Button1.Enabled = True Thenのように記述する必要はありません。このように記述しても同じように動作しますが冗長です。
以下の例では変数Xが5のときと、それ以外の場合とで別のメッセージを表示する。
If X > 5 Then
MsgBox("Xは5より大きいです。")
Else
MsgBox("Xは5以下です。")
End If■リスト3
以下の例では変数Xが5の場合、そうではなくて変数Yが8である場合、それ以外の場合とで別々のメッセージを表示する。
If X = 5 Then
MsgBox("Xは5です。")
ElseIf Y = 8 Then
MsgBox("Yは8です。")
Else
MsgBox("Xは5ではないし、Yは8ではありません。")
End If■リスト4
以下の例では変数Xが5ではない場合にメッセージを表示する。
If X <> 5 Then
MsgBox("Xは5で はありません。")
End If■リスト5
以下の例も同様。
If Not X = 5 Then
MsgBox("Xは5で はありません。")
End If■リスト6
以下の例ではButton1.EnabledがFalseの場合にメッセージを表示する。
If Not Button1.Enabled Then
MsgBox("Button1は使用不可です。")
End If■リスト7
メモ:この例ではButton1.Enabled自体がTrueまたはFalseを表しているのでIf Not Button1.Enabled = True Thenのように記述する必要はありません。このように記述しても同じように動作しますが冗長です。なお、NotはTrueをFalseに、FalseをTrueに反転させます。
以下の例では変数Xが5であると同時に変数Yが8のときにメッセージを表示する。
If X = 5 AndAlso Y = 8 Then
MsgBox("Xは5でYは8です。")
End If■リスト8
メモ:この例ではAndAlsoの代わりにAndを使うこともできますが、特別な事情のない限り条件判断にはAndは使用しないようにして下さい。
以下の例では変数Xが5であるか、または変数Yが8のときにメッセージを表示する。X=5であると同時にY=8である場合にもメッセージは表示される。
If X = 5 OrElse Y = 8 Then
MsgBox("Xが5であるかYが8であるか、もしくはその両方です。")
End If■リスト9
メモ:この例ではOrElseの代わりにOrを使うこともできますが、特別な事情のない限り条件判断にはOrを使用しないようにして下さい。
テキストボックスに何か入力されているか判断する例
If Len(TextBox1.Text) = 0 Then
MsgBox("TextBox1には何も入力されていません。")
Else
MsgBox("TextBox1には「" & TextBox1.Text & "」と入力されています。")
End If■リスト10
文字列中に「 , 」(カンマ)が含まれているか判断する例
Dim St As String
St = TextBox1.Text
If St.Contains(",") Then
MsgBox("カンマが含まれています。")
Else
MsgBox("カンマは含まれていません。")
End If■リスト11
変数Xの値を変数Yで割り切れるか判断する例
Dim X As Integer = 221
Dim Y As Integer = 13
If X Mod Y = 0 Then
MsgBox(X & "は" & Y & "で割り切れます。")
Else
MsgBox(X & "を" & Y & "で割ると、余りは" & X Mod Y & "です。")
End If■リスト12
Object型の変数senderがButton1であるかどうか判断する例
Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click
If sender Is Button1 Then
MsgBox("Button1です。")
Else
MsgBox("Button1ではないです。")
End If
End Sub■リスト13
Object型の変数senderがButton型であるかどうか判断する例
Private Sub AnyControl_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Enter, Button2.Enter, TextBox1.Enter
If TypeOf sender Is Button Then
MsgBox("senderはButtonです。")
Else
MsgBox("senderはButtonではありません。")
End If
End Sub■リスト14