メイン画像

VBScript - 制御構文(条件分岐)

VBScript - 制御構文(条件分岐)


VBScript で、条件に基づいて処理を分岐する方法を説明します。

If または Select Case で分岐する方法があります。

If…Then…Else

式の値によって条件分岐を行います。

ブロック形式での書き方

If 〈条件〉 Then
    〈条件を満たす場合の処理〉
ElseIf 〈条件2〉 Then
    〈条件2を満たす場合の処理〉
Else
    〈いずれの条件も満たさない場合の処理〉
End If

ElseIf および Else は任意です。必要に応じて定義します。

ElseIf はいくつでも定義できます。

1行形式での書き方

(見にくいので使わないことを推奨します)

If 〈条件〉 Then 〈条件を満たす場合の処理〉 Else 〈条件を満たさない場合の処理〉

複数のステートメントを書く場合は、コロン(:)で区切ります。

If A > 10 Then A = A + 1 : B = B + A : C = C + B

Select Case

式の値によって条件分岐を行います。

Select Case 〈式〉
    Case 〈式〉
        〈Case の式を満たした場合の処理〉
    Case Else
        〈いずれも満たさなかった場合の処理〉
End Select

Case はいくつでも定義できます。

Case Else は任意です。必要に応じて定義します。

Select Case の使用例

myColor = InputBox("色を入力してください")
Select Case UCase(myColor)
    Case "RED"
        MsgBox "#f00"
    Case "GREEN"
        MsgBox "#0f0"
    Case "BLUE"
        MsgBox "#00f"
    Case Else
        MsgBox "そのような色は知りません"
End Select

VBScript の Select Case では、不等号を使った条件は使えません。

以下の書き方はコンパイルエラーになります。

sec = Second(Now)
Select Case sec
    Case 0 To 30
        MsgBox "0~30秒"
    Case Is <= 45
        MsgBox "31~45秒"
    Case Else
        MsgBox "46秒~"
End Select

アカウントを作成 して、もっと沢山の記事を読みませんか?


この記事が気に入ったら ことりと さんを応援しませんか?
メッセージを添えてチップを送ることができます。


この記事にコメントをしてみませんか?


酒とアクアリウムが最近の楽しみ。

おすすめの記事