
Excel VBAで空白セルの背景色を一括で変えるサンプルです。
一度だけ実行できれば良いものと、セルの値が変わる度に色を変える2種類を記載します。
< スポンサーリンク >
VBAで空白セルの背景色を変える(1回だけ)
A1~D10の範囲の空白セルの背景色を赤、そうでなければ背景色なしにします。
Sub test()
Dim ws As Worksheet
Dim rng As Range
Set ws = ActiveSheet
‘A1~D10を繰り返す
For Each rng In ws.Range(“A1:D10”)
‘セルが空白であれば背景色を赤
If rng.Value = “” Then
rng.Interior.Color = RGB(255, 0, 0)
‘そうでなければ背景色をクリア
Else
rng.Interior.ColorIndex = 0
End If
Next
End Sub


VBAでセルの値が変わる度に空白セルの背景色を変える
A1~D10の範囲でセルの値が変わる度に空白であれば赤、そうでなければ背景色なしにします。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim ws As Worksheet
Dim rng As Range
Set ws = ActiveSheet
Set rng = Application.Intersect(Target, ws.Range(“A1:D10”))
‘TargetがA1~D10の範囲内であれば
If Not rng Is Nothing Then
‘セルが空白であれば背景色を赤
If Target.Value = “” Then
Target.Interior.Color = RGB(255, 0, 0)
‘そうでなければ背景色をクリア
Else
Target.Interior.ColorIndex = 0
End If
End If
End Sub


こんな記事も書いています