For~Nextステートメント マクロ講座23回-2
23回の続きです。記録のマクロでセルを同じ色に塗るという操作を10回繰り返しましたが、
それをFor~Nextステートメントを使って書き換えます。
(サンプルファイルは、こちらから マクロ講座23回サンプルデータ)
繰り返し命令は非常に重要です。
繰り返し命令が、できるからこそマクロを作る価値があるといっても過言ではないでしょう。
For~Nextステートメントは、最も代表的なものです。
For~Next ステートメントは
と記述するものす。
For と Next の直後に記される変数名(この例ではカウンタ変数)はと繰り返し回数までの処理で使われる変数名は同じものでなければなりません。
この命令の意味は、
「カウンタ変数を開始値から終了値まで変化させ、Next文まで の間に記された『繰り返し回数までの処理(命令)』を繰り返しなさい。」です。
For カウンタ変数 = 1 To 10
Range("A" & カウンタ変数).Interior.ColorIndex = 3 ' 繰り返し回数までの処理
Nextのようになるのです。
この例の場合は For 文と Next 文の間に記された命令が カウンタ変数が10になるまで10回繰り返されることになります。
Sub 背景を塗るColorIndexで()
Dim 行は変数 As Integer
For 行は変数 = 1 To 10
Range("A" & 行は変数).Interior.ColorIndex = 3
Next
End Sub
Sub 背景を塗るColorプロパティで()
Dim 行は変数 As Integer
For 行は変数 = 1 To 10
Range("A" & 行は変数).Interior.Color = RGB(255,0,0)
Next
End Sub

Sub セル斜めに色を塗る()
Dim 行は変数 As Integer
For 行は変数 = 1 To 10
Cells(行は変数,行は変数).Interior.ColorIndex = 3
Next
End Sub
Sub kurikaesi3() Dim 変数 As Long For 変数 = 2 To 21 Cells(変数, 変数).Interior.ColorIndex = 変数 Next End Sub

Sub kurikaesi4() Dim hensuu1 As Long, hensuu2 As Long hensuu1 = 21 For hensuu2 = 1 To 21 Cells(hensuu1, hensuu2).Interior.ColorIndex = hensuu2 hensuu1 = hensuu1 - 1 Next End Sub
