1. ホーム
  2. スクリプト・コラム
  3. vbs

VBSの基本 - 条件付き文(IfとSelect Case)

2022-02-08 03:33:30

If ... Then ... Else

次のような場合、If... を使用することができます。.Then... Else ステートメントを使用します。

条件が真のとき、コードの一部を実行する

2つのコードのうち1つが実行対象として選択された場合

dim a 'Define a variable
a = 100
if a < 200 then a = 300 'If i < 200, then reassign the value to i
msgbox a 'The output value is 300

複数行のコードを実行するには、End If ステートメントを含む複数行 (またはブロック) 構文を使用する必要があります。

dim a,b,c
a=inputbox("Please enter the value of a: ")
b=100
c=200
if a<200 then 'Run a block of statements when the condition is True, and another block of statements when the condition is False
  msgbox b
else
  msgbox c
end if

複数の条件を決定するために、ElseIf句をいくつでも追加して、複数の選択肢を提供します。

dim a
a=inputbox("Please enter the value of a: ")
if a<200 then 'Run a block of statements if the condition is True, and another block of statements if the condition is False
  msgbox "Execute statement 1"
elseif a=200 then 
  msgbox "Execute statement 2"
elseif a>200 then
  msgbox "Execute statement 3"
end if

Select Case 構造体は、If... を提供します。.Then.... Select Case ステートメントは、If....Then... と同じ機能を提供します。.Then...と同じ機能を提供します。Else ステートメントと同じ機能を提供しますが、コードをより簡潔で読みやすくします。

'The Select Case structure uses a simple test expression that is computed only once at its beginning. The result of the expression is compared to the value of each Case in the structure, and if it matches, the block of statements associated with that Case is executed.
dim a
a=inputbox("Fill in a random number")
a=int(a)
select case a 
  case 6,7,8,9 msgbox("okay")
  case 10,11,12,13,14,15 msgbox("fair")
  case 16,17,18,19,20 msgbox("It's okay")
  case 21,22,23,24,25 msgbox("invincible")
  case else msgbox("Dreaming")
end select

注:Select Case構文は、式を最初に(一度だけ)計算するのみで、If.... .Then... ElseIf 構造体は、ElseIf ステートメントごとに式を計算し、その式は変化することがあります。各 ElseIf ステートメントが同じ式を計算する場合のみ、Select Case 構造を If...Then...ElseIf の代わりに使用することができます。.Then... ElseIf 構造を使用します。