VBS For文のサンプル(VBScript)

VBSのFor文のサンプルです。処理を繰り返す時に使用します。

目次

For文 For文
  For文で配列の値を取得する
  For文でStep(増分)を使用する
Exit For ループ処理を抜ける(Exit For)
(continue) ループ処理で処理をスキップする
For Each文 For Each文(ループで加算を使用しないfor文)

For文

For 変数 = 開始値 To 終了値 (Step 増値)
    実行される処理
Next
  • 処理を繰り返す時に使用します。最初にforを書くのでfor文と呼ばれます。
  • 変数が開始値から終了値の範囲内の間、繰り返します。
  • 「Step 増値」を省略した場合は、増値=1になります。

For文のサンプル

For a = 1 To 5
	WScript.Echo(a)'1 2 3 4 5が出力される
Next

1行目は、1から5までの処理を繰り返します。
変数のaはカウンター変数またはループ変数と呼ばれます。

For文で配列の値を取得する

Dim color
color = Array("赤", "黄", "青") '配列

For a = 0 To UBound(color)
	WScript.Echo(color(a)) '赤 黄 青が出力される
Next

2行目は、配列です。
4行目のUBoundは、配列の添字の最大値を返します。この場合は2を返します。
5行目は、変数と添字で配列の値を表示しています。

For文でStep(増分)を使用する

For a = 1 To 10 Step 2
	WScript.Echo(a) '1 3 5 7 9が出力される
Next

1行目は、Stepの値が2です。増分が2なので2行目は1,3,5,7,9が表示されます。

ループ処理を抜ける(Exit For)

For文でExit Forを使用してループ処理を抜けるサンプルです。

For a = 1 To 5
	If (a = 3) Then
        Exit For
    End If
    WScript.Echo(a) '1 2が出力される
Next

3行目は、Exit Forを使用してループ処理から抜けています。

ループ処理で処理をスキップする

vbsには他言語にあるcontinueがありません。
そのためdo-loop文を使って同じような動きをさせます。

For a = 1 To 5
	Do
		If a = 3 Then Exit Do
		WScript.Echo(a)  '1 2 4 5が出力される
	Loop While False
Next

2,5行目は、do-loop文で1回のみ処理します。
3行目は、if文の条件が一致した時do-loop文を抜けます。

For Each文(ループで加算を使用しないfor文)

For  Each  変数  In  コレクションや配列
    実行される処理
Next
  • 処理を繰り返したいときに使用します。
  • コレクションの数や配列の値の数分処理を繰り返します。

For Each文のサンプルです。

Dim color
color = Array("赤", "黄", "青") '配列

For Each a In color
	WScript.Echo(a) '赤 黄 青が出力される
Next

2行目は、配列です。
4行目は、For Each文で配列の値の数分処理を繰り返します。

関連の記事

VBS if文のサンプル(VBScript)
VBS 配列のサンプル(VBScript)

△上に戻る