■ループ処理 For…Next
同一の処理を何度も繰り返すことを「ループ処理」と呼ぶ。
ループ処理には、指定した回数だけ繰り返す方法や、
ある特定の条件を満たすまで処理を繰り返す方法がある。
今回はFor…Next文を使用する。
For 変数 = 初期値 To 繰り返したい回数
処理 〇〇
Next
■例題( 1〜10までを表示する)
Excel Vba のイミディエイトに1〜10までを表示する。
フロー図:
▼サンプルコード
Public Sub RoopCounter()
Dim i As Integer 'カウント用変数
' 10回繰り返す
For i = 1 To 10
' イミディエイトに出力
Debug.Print i
Next i
End Sub
▼実行結果
1
2
3
4
5
6
7
8
9
10
■例題(シート名の取得)
for…Next文を使用して、Excelのシート名を取得する。
※今回は Sheet1、Sheet2、Sheet3の名前を取得する。
▼イメージ
上記Sheet1、Sheet2、Sheet3の名前を取得する。
▼実装概要
シート総数を変数に格納(今回は3)
シート総数分(3回)処理を繰り返す(For…Next文)
シート名をイミディエイトに出力
処理終了
▼サンプルコード
Public Sub RoopCounter()
Dim i As Integer 'カウント用変数
Dim countSheets As Integer 'シート数格納変数
' シート総数を変数に格納(今回は3シートのため、3が設定される)
countSheets = Worksheets.Count
' シート数分繰り返す
For i = 1 To countSheets
' シート名をイミディエイトに出力
Debug.Print Worksheets(i).Name
Next i
End Sub
▼補足説明
Worksheets(i).Name とすることで、i番目のシート名を取得することができる。
※Worksheets(i)のiは1始まりであることに注意!!
▼実行結果
Sheet1
Sheet2
Sheet3
コメント