VBScriptにおける条件分岐「And」「Or」の使い方を解説しています。
And と Or の違い
VBScript では、条件分岐に使用する条件を複数設定することが可能です。
複数の条件を設定する際に使用する「And」と「Or」は以下の点が異なります。
- And:複数の条件の両方を満たす場合に真(True)となる
- Or:複数の条件のどちらかを満たす場合に真(True)となる
ここから、実際にどのように処理されるか見ていきたいと思います。
And
And の書式とサンプルになります。
書式
If ( 条件式1 And 条件式2 ) Then 条件式1と条件式2の両方が True の場合の処理 Else 条件式1と条件式2の両方または片方が False の場合の処理 End if
サンプル①
下記のサンプルを実行すると、
If文の条件式1の「str1 = “あいうえお”」と条件式2の「str2 = “かきくけこ”」の両方を満たしているため、メッセージボックスダイアログで「条件を満たしています。」と表示されます。
str1 = "あいうえお" str2 = "かきくけこ" If(str1 = "あいうえお" And str2 = "かきくけこ")Then MsgBox("条件を満たしています。") Else MsgBox("条件を満たしていません。") End If
サンプル②
下記のサンプルでは、If文の条件式1の「str1 = “あいうえお”」は満たしています。
しかし、条件式2は「str2 = “かきくけこ”」ですが、実際の str2 の値は「さしすせそ」となっており、条件を満たしていません。
この場合は、If文の条件の両方を満たしていないため、メッセージボックスダイアログで「条件を満たしていません。」と表示されます。
str1 = "あいうえお" str2 = "さしすせそ" If(str1 = "あいうえお" And str2 = "かきくけこ")Then MsgBox("条件を満たしています。") Else MsgBox("条件を満たしていません。") End If
Or
Or の書式とサンプルになります。
書式
If ( 条件式1 Or 条件式2 ) Then 条件式1と条件式2の両方または片方が True の場合の処理 Else 条件式1と条件式2の両方が False の場合の処理 End if
サンプル③
下記のサンプルでは、If文の条件式1は「str1 = “さしすせそ”」となっていますが、str1 の値は「あいうえお」となっており、条件を満たしていません。
しかし、条件式2の「str2 = “かきくけこ”」を満たしているため、メッセージボックスダイアログで「条件を満たしています。」と表示されます。
str1 = "あいうえお" str2 = "かきくけこ" If(str1 = "さしすせそ" Or str2 = "かきくけこ")Then MsgBox("条件を満たしています。") Else MsgBox("条件を満たしていません。") End If
サンプル④
下記のサンプルでは、If文の条件式1は「str1 = “さしすせそ”」となっていますが、str1 の値は「あいうえお」となっており、条件を満たしていません。
また、条件式2は「str2 = “かきくけこ”」ですが、str2 の値は「たちつてと」なので、こちらも条件を満たしていません。
なので、メッセージボックスダイアログで「条件を満たしていません。」と表示されます。
str1 = "あいうえお" str2 = "かきくけこ" If(str1 = "さしすせそ" Or str2 = "たちつてと")Then MsgBox("条件を満たしています。") Else MsgBox("条件を満たしていません。") End If
コメント