はじめに
Excelで作業をしていると、
「条件に合ったセルだけ色を変えたい」
「処理の途中でセルを強調したい」
そんな場面がよくあります。
VBAでは、セルの色を変更する方法がいくつかあり、
目的に合わせて使い分けることで、コードがより読みやすく、扱いやすくなります。
ここでは、セルの色を変更する基本のコードと、そのしくみを解説します。
まずはコードを確認
Range("A1").Interior.Color = vbYellow
もっともシンプルな書き方です。
A1セルの背景色を「黄色」に変更しています。
コードのしくみを解説
Interior.Color で背景色を変更する
Interior.Color は、セルの背景色を設定するプロパティです。
Range("A1").Interior.Color = RGB(255, 0, 0) '赤
- vbYellow などの定数
- RGB(赤, 緑, 青) の指定
どちらでも色を設定できます。
Cells(row, column) を使う方法
Cells(1, 1).Interior.Color = vbGreen 'A1を緑に
ループ処理と相性が良い書き方です。
シートを指定して色を変える
Worksheets("データ").Range("B2").Interior.Color = vbBlue
複数シートを扱う場合は、シート名を明示すると安全です。
あわせて知っておきたいポイント
色をクリアしたい場合
Range("A1").Interior.ColorIndex = xlNone
背景色を元に戻すときに使います。
Color と ColorIndex の違い
- Color
→ RGB値で細かく色を指定できる
- ColorIndex
→ Excelのカラーパレット番号で指定する(簡易的)
複数セルをまとめて色変更
Range("A1:C3").Interior.Color = RGB(240, 240, 240)
範囲指定で一括変更できます。
条件に応じて色を変える例
If Range("A1").Value > 100 Then
Range("A1").Interior.Color = vbRed
End If
実務でよく使うパターンです。
使うときに気をつけたいこと
- 結合セルは色変更が不安定なことがあります
→ 可能なら避けるのが安全です。
- 色の指定は RGB のほうが再現性が高い
→ 他のPCでも同じ色を再現できます。
- 条件付き書式と競合する場合があります
→ 条件付き書式が優先される点に注意。
まとめ
- Interior.Color でセルの背景色を変更できる
- RGB を使うと細かい色指定が可能
- 複数セルや条件付きの色変更も簡単
- シート名を明示すると、実務でのトラブルを防げる
セルの色を変えるだけで、処理の見える化や確認作業がぐっと楽になります。

decopon
セルの色を変える処理は、VBAの中でも視覚的な効果が大きい部分です。
ちょっとした強調や確認にも使えるので、ぜひ気軽に活用してみてください。

moco
色が変わると、気持ちも少し明るくなるよね。
VBAは、そんな小さな工夫も手伝ってくれるんだ。

コメント