
『Microsoft Excel』(以下Excel、エクセル)の中の機能としてある[VBA] について基本的な説明をしていきます。
仕事の改善や個人的な知識向上に役立ててください(^o^)
第22回目の今回は
VBAを使って、1行おきにセルに色をつける方法
について解説していきますので、よろしくお願いします。
これまでのVBAに関する記事は、下記のINDEXを参照してくださいね。
↓サブログ内部リンク(VBA用INDEX)↓
-
-
目次
Excel VBA講座-目次(INDEX)
サブローExcel VBAに関する説明を今後増やして行く予定なので、各リンクに飛ぶような目次(INDEX)を作りました。 随時更新していくので、よろしくお願いします。 スラスラ読めるExcel VBA ...
続きを見る
1行おきにセルに色をつける方法①
セル(例では一番左側のB列のセル)が空欄でない限り、1行おきに色を塗り潰す処理を繰り返す方法です。(Do While~Loop)
<コード例>
Sub color1()
Dim i As Intege r '整数型のデータ型を宣言します。
i = 3 '初期値のiを3に設定します。
Do While Cells(i, 2).Value <> "" 'Biセルが空欄でない場合。
Range(Cells(i, 2), Cells(i, 4)).Interior.ColorIndex = 20 'Biセル~Diセルを塗り潰します。
i = i + 2 'iの値に2を足してiを再設定します。
Loop 'Do Whileの処理まで戻って処理を繰り返します。
End Sub
※上記は『1行おきに色をつける』を、2行おき、3行おきに色を変えたい場合は、下記のように変更すればよいです。
★2行おきの場合は『i = i + 2』⇨『i = i + 3』★3行おきの場合は『i = i + 2』⇨『i = i + 4』
※『Do~Loop』に関しては、下記の講座を参照してください。
繰り返し処理(Do~Loop)を使いこなそう!【VBA入門講座#9】
1行おきにセルに色をつける方法②
塗りつぶす範囲の適用が分かっている場合に、1行おきに色をつけて塗り潰す処理を繰り返す方法です。(For~Next)
<コード例>
Sub color2()
Dim i As Integer '整数型のデータ型を宣言します。
For i = 3 To 20 Step 2 'iが3~20までの区間を2つ間隔で処理します。
Range(Cells(i, 2), Cells(i, 4)).Interior.ColorIndex = 20 'Bi~Diまでの範囲に色をつけて潰します。
Next 'ループカウンターを次に進めて処理を繰り返します。
End Sub
※上記は『1行おきに色をつける』を、2行おき、3行おきに色を変えたい場合は、下記のように変更すればよいです。
★2行おきの場合は『Step 2』⇨『Step 3』
★3行おきの場合は『Step 2』⇨『Step 4』
※『For~Next』に関しては、下記の講座を参照してください。
繰り返し処理(For~Next)を極める!【VBA入門講座#14】

下のVBA講座も是非ご覧下さい!!
関連
前回のVBA講座(第21回)
『オートフィルター』機能を利用しよう!【VBA入門講座#21】
関連
次回のVBA講座(第23回)