VBA-制御構文
VBA制御構文
If文
IfにはThenをつける必要があります。
追加の条件分岐は「ElseIf」であり、IfとElseの間には空白を入れません。
If 条件 Then
処理
ElseIf 条件 Then
処理
Else
処理
End If
条件は括弧で囲うことができます。
一行で記述することもできます。
rc = func()
If (rc = False) Then Exit Function
GoTo文
指定ラベルまで処理を飛ばします。
GoTo LABEL名
LABEL名:
Select文
複数条件分岐(他言語のswitch文)はSelectを利用します。
Case毎で独立した処理を行うため、明示的な終了宣言(breakなど)はありません。
Select Case 変数
Case 値1
処理
Case 値2
処理
Case Else
処理
End Select
For文
For~Next文ではデフォルトでは、カウンタ変数に「1」が加算されます。
「STEP」を指定しカウンタ変数に加算される数値を指定することができます。
For カウンタ変数 = 初期値 To 繰り返し回数 Step 加算値
処理
Next
For文の途中で抜けるにはExit Forステートメントを使用します。
For i = 0 To 4
rc = func(i)
If (rc = False) Then Exit For
Next
Do While文
継続条件を判定してループ処理を行います。
Do While 条件式
繰り返す処理
Loop
Whileの位置をLoopの後ろに記述した場合、繰り返す処理を実行してから条件式判断を行います。
Do
繰り返す処理
Loop While 条件式
Do While文の途中で抜けるにはExit Doステートメントを使用します。
i = 0
Do while i < 5
rc = func(i)
If (rc = False) Then Exit Do
i = i + 1
Loop
Do Until文
Do Until文はDo While文の否定を表現します。
Do Until文の途中で抜けるにはExit Doステートメントを使用します。
Do Until 条件
If 条件 Then
Exit Do
End If
Loop