Module
Contents
Index 🔎︎

# 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