VBSの基本 - ループ (for, do, while)
コードを書くときに、あるコードを何度も実行したいことがよくありますが、そのためにコード内でループを使用することができます。
ループは、条件がFalseになる前に文を繰り返すもの、条件がTrueになる前に文を繰り返すもの、指定した回数だけ文を繰り返すものの3つに分類されます。
For... 次は ステートメントを何回繰り返すかをカウンタで指定する
Do... ループ 条件が成立したとき、または成立するまでループを実行する。
While...Wend。条件がTrueのときにループする
For Each... .Next: コレクション内の各アイテム、または配列内の各要素に対して一連のステートメントを繰り返す
For... .Nextステートメント
ステートメントを繰り返し実行するループの回数をカウンタで指定し、以下の構文で構成します。
For counter = start To end [step step] 'counter is used as the numeric variable for the loop counter, start: the initial value of counter, end: the final value of counter, step: the step length of counter
[statements]
[Exit For] 'Exit the loop
[statements] [Exit For] 'Exit loop
Next
Dim Count:Count = 0 'Define a variable and assign it a value of 0
For i = 1 To 10 'Loop 10 times, the For statement specifies the count variable and its start and end values
Count = Count + 1
Next 'The Next statement increments the variable i in steps of 1
MsgBox Count 'Output 10 '
Exit loop: The Exit For statement is used to exit the For... . Next statement.
Dim Count:Count = 0 'Define a variable and assign it the value 0
For i = 1 To 10 step 2 'Loop 10 times with a step size of 2. By using the Step keyword, we can specify the incremental or decremental step value of the count variable
Count = Count + 1
If Count = 3 Then 'When the value of the variable Count is 3, exit the current loop
Exit For 'Exit the loop
End If
Next
MsgBox Count 'Output 3
ステートメントを繰り返し実行するループの回数をカウンタで指定し、以下の構文で指定します。
For counter = start To end [step step]
[Statements]
[Exit For]
[statements]
Next
主なパラメータです。
counter: ループカウンタとして使用される数値変数。この変数は、配列要素やユーザー定義型の要素にすることはできない。
start: カウンタの初期値。
end: カウンタの最終値。
step: カウンタのステップ。指定しない場合、stepのデフォルト値は1である。
具体的なコード例は以下の通りである。
For...Next
Dim Count:Count = 0 'Define a variable and assign it a value of 0
For i = 1 To 10 'Loop 10 times
Count = Count + 1
Next
MsgBox Count 'Output 10
ステップには、カウンタループのステップを設定します
Dim Count:Count = 0 'Define a variable and assign a value of 0
For i = 1 To 10 Step 2 'Set the counter step to 2, loop 5 times
Count = Count + 1
Next
MsgBox Count 'Output 5
ループを終了する
Exit For ステートメントは、For... を終了するために使用されます。Nextステートメントを終了させるために使用します。通常、ループを抜けるのは特定の特殊な場合(例えば、エラーが発生したとき)だけなので、If.... Then... Else ステートメントを使用します。条件が False ならば、ループは通常通り実行されます。
Dim Count:Count = 0 'Define a variable and assign it a value of 0
For i = 1 To 10 'Loop 10 times
Count = Count + 1
If Count = 5 Then 'When the value of the variable Count is 5, exit the current loop
Exit For
End If
Next
MsgBox Count 'Output 5
条件が成立したら(または成立するまで)ループを実行する
Repeat the statement until the condition becomes True
Dim Count:Count = 5 'Define a variable
Do Until Count = 0 'until the Count variable is 0, otherwise keep looping
MsgBox Count
Count = Count -1
Loop
MsgBox "End of loop"
Dim Count:Count = 5 'Define a variable
Do
MsgBox Count
Count = Count -1
Loop Until Count = 0 'until the Count variable is 0, otherwise keep looping
MsgBox "Loop Ended"
Repeat a block of statements before the condition becomes True
Dim Count:Count = 5 'Define a variable
Do While Count <> 0 'Stop the loop when the Count variable is 0
MsgBox Count
Count = Count -1
Loop
MsgBox "End of loop"
Dim Count:Count = 5 'Define a variable
Do
MsgBox Count
Count = Count -1
Loop While Count <> 0 'Stop the loop when the Count variable is 0
MsgBox "End of loop"
The Exit Do statement is used to exit the Do.... Loop loop
Dim Count:Count = 5 'Define a variable
Do While Count <> 0 'Stops the loop when the Count variable is 0
MsgBox Count
Count = Count -1
If Count = 2 Then 'Determine if the value of the Count variable is 2, if so, exit the loop
Exit Do
End If
Loop
MsgBox "Loop ended"
While...Wend 条件がTrueのときのループ
Dim Count:Count = 5 'Define a variable
While Count <> 0 'When the value of the Count variable is not equal to 0, it keeps looping
MsgBox Count
Count = Count -1
Wend
MsgBox "End of loop"
While...Wend without Exit statement, loop from beginning to end, to exit in the middle, use Do...Loop statement
For Each... .Nextステートメント
For Each... Next は、指定された回数だけ文を実行するのではなく、配列の各要素やオブジェクトのコレクションの各項目について、一連の文を繰り返し実行します。これは、コレクション内の要素数が分からない場合に便利です。
Dim Dics 'Define a variable
Set Dics = CreateObject("Scripting.Dictionary") 'Define a Dictionary object
Dics.Add "0", "Athens" 'Assign a value to the Dictionary object
Dics.Add "1", "Belgrade"
Dics.Add "2", "Cairo"
For Each Dic in Dics
MsgBox Dics.Item(Dic) 'Loop through and output Dictionary key values
Next
関連
-
VBS再帰的手法による多階層ディレクトリフォルダ作成方法
-
vbsによるテキストループの読み込み
-
指定されたファイルを指定されたディレクトリにバックアップし、日付で名前を変更するVbsコード
-
コンピュータのオン/オフ時間を問い合わせるためのvbsコード
-
vbs+batでnodejsアプリケーションをバックグラウンドで自動実行するウインドウ。
-
Windows 64ビットOS上で32ビット版vbscriptを実行する方法
-
GZIP圧縮されたHTTPコンテンツを取得するためのVBSコード
-
Excelのレポートを作成するVbscriptの共通操作のまとめ
-
Iisext.vbsを使ってWebサービスの拡張機能を一覧表示する方法
-
Iisext.vbsを使ったアプリケーション依存の削除方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン