条件付き書式の最も基本的な使い方は、セルの値に応じて書式を変える方法です。
ここでは「セルの値が100以上のとき、赤字にする」という例を紹介します。
1. 基本コード例
Sub 条件付き書式_値で赤字()
Dim rng As Range
Set rng = Range("A1:A10") '対象範囲を指定
'既存の条件付き書式を削除
rng.FormatConditions.Delete
'新しい条件付き書式を追加
rng.FormatConditions.Add _
Type:=xlCellValue, _
Operator:=xlGreaterEqual, _
Formula1:="100"
'書式を赤字に設定
rng.FormatConditions(1).Font.Color = vbRed
End Sub
2. 処理の流れ
- 対象範囲を指定
Range("A1:A10")
のようにセル範囲を設定します。 - 既存の条件付き書式を削除
FormatConditions.Delete
を使うことで、重複を避けられます。 - 条件の追加
Type:=xlCellValue
を指定し、Operator:=xlGreaterEqual
として「100以上」を条件にします。 - 書式の設定
Font.Color = vbRed
を指定して赤字にします。
3. 応用例:背景色の変更
赤字ではなく背景色を変えたい場合は Interior.Color
を使います。
rng.FormatConditions(1).Interior.Color = RGB(255, 200, 200)
上記を追加すると、100以上のセルは「背景を淡い赤色」にできます。
4. 他の条件設定例
- 50以下を青字にする
rng.FormatConditions.Add _
Type:=xlCellValue, _
Operator:=xlLessEqual, _
Formula1:="50"
rng.FormatConditions(2).Font.Color = vbBlue
- 範囲内の判定(50~100)
rng.FormatConditions.Add _
Type:=xlCellValue, _
Operator:=xlBetween, _
Formula1:="50", _
Formula2:="100" rng.FormatConditions(3).Interior.Color = RGB(200, 255, 200)
5. まとめ
FormatConditions.Add
を使って「セルの値に基づく条件」を設定できる。Font.Color
やInterior.Color
を使えば文字色・背景色を自由に変更可能。- 数値の大小判定や範囲指定も柔軟に設定できる。
コメント