エクセルマクロVBA

指定した回数の繰り返し処理(For… Nextステートメント)

投稿日:


動画で楽にパソコンが身につく方法はこちら>>

指定した回数だけ処理を繰り返し行わせたい場合はFor… Next文を使用します。

 

[書式]

For 変数 = 初期値 To 最終値
Step  加算値 )    

    処理

Next

 

初期値からスタートして一回処理が行われます。

そして処理が行われた後、初期値が1増加して、再度処理が行われます。

そして最終値になると処理が終了します。

 

[] 

For カウンタ = 3 To 10

Range(Cells(カウンタ, 1), Cells(カウンタ, 2)).Interior.ColorIndex = 35

Next

 

For カウンタ = 3 To 9 Step 2

Range(Cells(カウンタ, 1), Cells(カウンタ, 2)).Interior.ColorIndex = 45

Next

 

[サンプルC103_1]

Sub C103_1()

 

Worksheets(“C103”).Select

 

Dim カウンタ As Integer

 

For カウンタ = 3 To 10

Range(Cells(カウンタ, 1), Cells(カウンタ, 2)).Interior.ColorIndex = 35

Next

 

End Sub

 

 

For文によってセルの色を塗る処理を行っています。

はじめにカウンタの値が初期値の3のときは

Range(Cells(カウンタ, 1), Cells(カウンタ, 2)).Interior.ColorIndex = 35の部分が

Range(Cells(3, 1), Cells(3, 2)).Interior.ColorIndex = 35となり

3行目の1列目と2列目のセルに塗りつぶしが行われます。

 

以降カウンタが1増加して

処理がRange(Cells(4, 1), Cells(4, 2)).Interior.ColorIndex = 35となり

4行目の1列目と2列目のセルに塗りつぶしが行われ、

最終的にカウンタの値が10になるまで同様に塗りつぶしが実行されます。

 


[サンプルC103_2]

Sub C103_2()

 

Worksheets(“C103”).Select

 

Dim カウンタ As Integer

 

For カウンタ = 3 To 9 Step 2

 

Range(Cells(カウンタ, 1), Cells(カウンタ, 2)).Interior.ColorIndex = 45

 

Next

 

End Sub

 

For文によってセルの色を塗る処理を行っています。

はじめにカウンタの値が初期値の3のときは

処理がRange(Cells(3, 1), Cells(3, 2)).Interior.ColorIndex = 45となり

3行目の1列目と2列目のセルに塗りつぶしが行われます。

 

そしてここではFor文でStep 2と指定して、増分値を2にしているため

カウンタが2ずつ増加します。

 

そのため処理がRange(Cells(5, 1), Cells(5, 2)).Interior.ColorIndex = 35となり

5行目の1列目と2列目のセルに塗りつぶしが行われ、

最終的にカウンタの値が9になるまで同様に塗りつぶしが実行されます。

 



動画で楽にパソコンが身につく方法はこちら>>

-エクセルマクロVBA

Copyright© エクセルVBA使い方入門 , 2023 All Rights Reserved Powered by STINGER.