【VBScript】無限ループ・繰り返し処理[Do-Loop文]の使い方


この記事はプロモーションを含みます。

VBScript

ホーム > VBScript 逆引きリファレンス

VBScriptにおける「Do – Loop」文の使い方を解説します。

はじめに

VBScriptで使用出来る ループ文(繰り返し処理)ですが、以下のように様々なものがあります。
本記事では、「Do – Loop」文の使用方法について説明します。

似たようなループ文がありますが、
「Do – Loop」文の特徴は、ループを継続するための条件式が存在しないことです。

では、実際に書式やサンプルを見ていきましょう。

書式

Do – Loop文の書式です。
While文とは違い、ループを継続するための条件式は記述しません。

Do
	処理
Loop

こちらの Do – Loop文では、条件式が存在しないため、常に無限ループとなります。
なので、ループ内の処理として、ループから抜ける処理を記述する必要があります。

サンプル

以下は、ループ回数を表示しつつ、指定した回数分ループするサンプルになります。

Option Explicit

' ループを終了する回数
Const LOOP_END = 5

' ループの回数
Dim loop_count

Do

	loop_count = loop_count + 1
	WScript.Echo("ループ回数:" & loop_count)
	If(loop_count = LOOP_END)Then
		' ループを抜ける
		Exit Do
	End If

Loop

サンプルの実行結果になります。

ループ回数:1
ループ回数:2
ループ回数:3
ループ回数:4
ループ回数:5

複数の条件を設定する

ループから抜ける条件を複数設定する方法を説明します。

以下のサンプルでは、ループから抜ける条件を2つ設定しています。

Option Explicit

' ループを終了する回数
Const LOOP_END = 5

' ループの回数
Dim loop_count

Do

	loop_count = loop_count + 1
	WScript.Echo("ループ回数:" & loop_count)
	If(loop_count = 3)Then
		' ループを抜ける
		Exit Do
	ElseIf(loop_count = LOOP_END)Then
		' ループを抜ける
		Exit Do
	End If

Loop

サンプルの実行結果になります。

ループ回数:1
ループ回数:2
ループ回数:3

上記のように、If文を使用することで、複数の条件を設定することが可能です。
While文でもIf文を使用して、複数の条件を設定することは可能ですが、
While文自体の条件式も記述する必要があるため、ソースコードが煩雑になってしまいます。

記事は以上になります。
冒頭にも書きましたが、Do – Loop文には条件式が存在しないため、常に無限ループ状態となります。
ループを抜ける条件が複数ある場合などは、While文より、Do – Loop文を使用する方がいいかもしれません。

関連記事

コメント

タイトルとURLをコピーしました