Crystal Reports  

Do ループ(Basic 構文)

Do ループは、決まったステートメント ブロックを不定数回実行する場合に使用できます。

Do ループの 4 つの形式

Do Loop の形式 説明
Do While ... Loop Do While ...Loop は、条件(condition)が評価され、条件が真の場合は条件に続くステートメント(statements)が評価されます。

その評価が完了すると、条件が再び評価され、条件が真の場合は、再びステートメントが評価されます。

条件が偽となるまで、この処理が繰り返されます。

Do While 条件
ステートメント
Loop
Do Until ...Loop Do Until ...Loop は Do While ...Loop に似ていますが、条件(condition)が真である限り継続されるのではなく、条件が真になるまでステートメント(statements)の評価が継続されます。
Do Until 条件
ステートメント
Loop
Do ...Loop While Do ...Loop While は、ステートメント(statements)を 1 度評価します。

次に条件(condition)が評価され、条件が真の場合は、ステートメントが再び評価されます。条件が偽となるまで、この処理が繰り返されます。

Do
ステートメント
Loop While 条件
Do ...Loop Until 条件(condition)が真となるまでステートメント(statements)が評価される点以外は、Loop While と同じです。
Do
ステートメント
Loop Until 条件
   Do ループは、ループから直ちに抜けるための Exit Do ステートメントをサポートしています。Exit Do ステートメントは For/Next ループの中の Exit For に似ています。

Do While ...Loop 式の例

次の例では、入力文字列内に現れる最初の数字を検索します。数字が見つかった場合はその位置を返し、見つからなかった場合は -1 を返します。この例の場合、入力文字列には明示的に文字列定数が設定されていますが、文字列型のデータベース フィールドを代入することもできます。

この例では、入力文字列 "The 7 Dwarves" に対して、式は 5 を返します。これは数字 7 の位置です。

Dim inString
inString = "The 7 Dwarves"
Dim i, strLen
i = 1
strLen = Len (inString)
formula = -1
Do While i <= strLen And formula = -1
Dim c As String
c = Mid (inString, i, 1)
If IsNumeric (c) Then formula = i
i = i + 1
Loop

参照

While ループ