ExcelVBAでセルの塗りつぶし11~行ごとに色を変える

Pocket

最後に、行ごとに色を変えるようにします。

ユーザーフォームにコマンドボタンを配置します。
Captionは何でも構いません。

2605231

配置したコマンドボタンのクリック時に次のVBAコードを入力します。
Private Sub CommandButton3_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer
c = 1
For a = TextBox2 To TextBox4 Step 2
For b = TextBox1 To TextBox3
Cells(a, b).Select
If c Mod 4 = 1 Then
Selection.Interior.Color = 13434777
End If

If c Mod 4 = 2 Then
Selection.Interior.Color = 13408767
End If

If c Mod 4 = 3 Then
Selection.Interior.Color = 6750207
End If

If c Mod 4 = 0 Then
Selection.Interior.Color = 10079487
End If
Next b
c = c + 1
Next a
End Sub

Mod関数は割り算の余りを計算する関数です。
行が増えるごとにcも増えます。
しかし行は2ずつ増えていくので、それに合わせてしまうと必ず余りは0か2もしくは1か3になって
2色になってしまいます。ですので、変数を一つ追加して、追加した変数の値によって
色を変えるようにします。

変数の動きです。
2605233
実行結果です。
2605232
あんまり強い色だと目がちかちかするので、薄めの色にしてみました。

事務処理がたまっているのに、今日も丸一日外出。
今週末は決算を一気に片づけて、早く肩の荷を下ろします。

本日も最後までお読み頂きありがとうございました。