While...Wend Statement
プログラムの実行が While ステートメントに差し掛かると、ループ条件の判定が行われます。この判定結果が False であれば、Wend ステートメント以降のプログラムコードが実行されます。判定結果が True であれば、Wend まで続くループ部のプログラムコードを実行してから、再度 While ステートメントの位置に実行行が戻ります。こうした判定結果が True であり続ける限り、ループ部が繰り返し実行されます。
Do...Loop とは異なり、While...Wend は Exit でループを中断することができません。また While...Wend ループを GoTo で抜け出すと、実行時エラーが発生することがあるため、この方法でループを中断させることはできません。
こうした理由から、より柔軟な対応の行える Do...Loop の使用が推奨されます。
構文:
While Condition [Statement] Wend
例:
Sub ExampleWhileWend
Dim stext As String
Dim iRun As Integer
sText ="This is a short text"
iRun = 1
while iRun < Len(sText)
if Mid(sText,iRun,1 )<> " " then Mid( sText ,iRun, 1, Chr( 1 + Asc( Mid(sText,iRun,1 )) )
iRun = iRun + 1
Wend
MsgBox sText,0,"Text encoded"
End Sub