次のコードが必要だとします。
Sub X
If TextBox1.Text = "Value" then
' Do something
ElseIf TextBox1.Text = "Value1" then
' Also do some other code
End IF
End Sub
どうすればいいですか?
プログラムで最初に何かをチェックし、それが真であれば別の何かをチェックし、それが真であればそのコードも実行したいと思います。
次のコードが必要だとします。
Sub X
If TextBox1.Text = "Value" then
' Do something
ElseIf TextBox1.Text = "Value1" then
' Also do some other code
End IF
End Sub
どうすればいいですか?
プログラムで最初に何かをチェックし、それが真であれば別の何かをチェックし、それが真であればそのコードも実行したいと思います。
AndAlsoをお探しですか?
If TextBox1.Text = "Value" AndAlso TextBox2.Text = "Value1" Then
....
End If
演算子は、式のAndAlso
両側の間で論理演算を実行します。最初の条件を評価し、この条件が false の場合、それ以上の処理を停止します (2 番目の式を評価せずに)。両方の条件が真の場合にのみ、if 内のコードが実行されます。この動作は短絡評価と呼ばれます
ただし、質問のコードは、同じ TextBox1 の両方の条件で true と評価することはできません
If condition1
then
if condition2
then
// do something
end if
end if
コードの例が有効で、値 1 に等しい場合、値 2 に等しい場合、両方が等しいことはできないため、どちらかが必要ということですか?
この場合、OR を使用できます。
else-if の代わりに、次のようにします。
If TextBox1.Text = "Value" then
' Do something
end if
If TextBox1.Text = "Value1" then
' Also do some other code
End IF
また:
If TextBox1.Text = "Value" then
' Do something
If TextBox1.Text = "Value1" then
' Also do some other code
End IF
end if
A も true の場合にのみ B を実行するかどうかによって異なります。