VBScript: if文でのAndやOrの使い方

VBScriptのif文でのAnd(論理積)やOr(論理和)の使い方を説明します。
どちらも論理演算子の1つで、if文の条件式で使われることが多いです。

「And」は2つの式の論理積を求め、両方がTrueの場合のみTrueで、 それ以外はFalseになります。
「Or」は2つの式の論理和を求め、 どちらか一方または両方がTrueの場合はTrueで、 両方がFalseの場合のみFalseです。

And のサンプルコード

以下のサンプルコードではif文の条件式でAnd演算子を使って 「intPrice >= 100」かつ「intCount > 20」という条件を表しています。

If intPrice >= 100 And intCount > 20 Then
	' 処理
End If

if文の条件式が長くなる場合は、 次のように「スペース+アンダーバー」を使って改行すると 見やすくなります。

If intPrice >= 100 And _
	intCount > 20 Then
	' 処理
End If

Or のサンプルコード

以下のサンプルコードではif文の条件式でOr演算子を使って、 「intPrice = 100」または「intPrice = 200」 または「intPrice = 300」という条件を表しています。

If intPrice = 100 Or intPrice = 200 Or intPrice = 300 Then
	' 処理
End If

条件が3つ以上あるような場合も「スペース+アンダーバー」 を使って改行してあげると見やすくなります。 今回は演算子の前で改行しています。

If intPrice = 100_
	Or intPrice = 200 _
	Or intPrice = 300 Then
	' 処理
End If

And と Or が混在する場合

AndとOrが混在する場合、Andの方が優先されます。

もしOrを優先したい場合は括弧()を使う必要があります。

次のサンプルコードでは、if文の条件式でAndとOrが混在していますが、 括弧を使うことでOr演算子を優先しています。

If (intPrice = 100 Or intPrice = 200) _
	And intCount = 300 Then
	' 処理
End If
VBScript入門