Excelの条件付き書式で期限切れのデータに色を付けたところ、日付を入力していない空白の行まで赤くなってしまうことがあります。
「空白なのに、なぜ条件に合っているのだろう」と疑問に思うかもしれません。
これは、条件付き書式が空白セルを含めて数式を判定していることが原因です。空白を除外する条件を数式に追加すれば、日付が入力されている行だけに色を付けられます。
1. 空白セルまで色が付くことがある
タスク管理表などでは、期限を過ぎた行を目立たせるために条件付き書式を使うことがあります。
例えば、C列に期限日が入力されている場合、次の数式で今日より前の日付を判定できます。
=$C2<TODAY()
この数式は、「C列の日付が今日より前か」を確認するものです。
ところが、条件付き書式の適用範囲を100行目まで設定していると、まだ期限日を入力していない行にも色が付くことがあります。
表に今後追加するデータのため、条件付き書式をあらかじめ広い範囲に設定していると起こりやすい問題です。
2. 結論:空白ではないという条件を追加する
空白セルを除外するには、次の数式を使います。
=AND($C2<>"",$C2<TODAY())
この数式では、次の2つを確認しています。
- C列が空白ではない
- C列の日付が今日より前である
両方の条件を満たした場合だけ、指定した書式が適用されます。
期限日が空白の行は最初の条件を満たさないため、色が付きません。
3. なぜ空白セルまで条件に合ってしまうのか
(1)空白が「0」として比較されることがある
Excelでは、数式の内容によって、空白セルが数値の「0」と同じように扱われることがあります。
Excelの日付は、画面上では「2026/7/26」のように表示されていますが、内部では連続した数値として管理されています。
そのため、空白セルを0として今日の日付と比較すると、次の条件が成立してしまいます。
0<TODAY()
0は今日の日付を表す数値より小さいため、「今日より前である」と判定されます。
これが、期限日を入力していない行まで色が付く主な理由です。
(2)空白かどうかを先に確認する
空白セルを除外する部分は、次のとおりです。
$C2<>""
<>は「等しくない」という意味です。""は、何も入力されていない状態を表します。
したがって、この式は「C2セルが空白ではない」という意味になります。
(3)AND関数で2つの条件をまとめる
AND関数は、複数の条件をすべて満たしているかを確認する関数です。
=AND($C2<>"",$C2<TODAY())
この数式では、期限日が入力されていて、なおかつ今日より前の場合だけTRUEになります。
条件付き書式は数式の結果がTRUEになったセルに書式を適用するため、期限日がある行だけを正しく判定できます。
4. 期限切れで未完了の行に色を付ける例
次のようなタスク管理表があるとします。
| 番号 | 作業内容 | 期限日 | 状況 |
|---|---|---|---|
| 1 | 見積書を作成する | 2026/7/20 | 対応中 |
| 2 | 資料を確認する | 未対応 | |
| 3 | メールを送信する | 2026/7/25 | 完了 |
| 4 | 入金を確認する | 2026/7/31 | 未対応 |
期限日が今日より前で、状況が「完了」ではない行だけを赤くする場合は、次の数式を使用します。
=AND($C2<>"",$C2<TODAY(),$D2<>"完了")
(1)数式の3つの条件
この数式は、次の3つを確認しています。
| 数式の部分 | 確認していること |
$C2<>"" | 期限日が空白ではない |
$C2<TODAY() | 期限日が今日より前である |
$D2<>"完了" | 状況が「完了」ではない |
3つの条件をすべて満たした行だけが色付けされます。
期限日が空白の2番の行には色が付きません。また、期限を過ぎていても「完了」になっている3番の行は対象外です。
(2)条件付き書式の設定
表がA1からD5にある場合は、見出しを除いた次の範囲を選択します。
A2:D5
続いて、「ホーム」タブから「条件付き書式」→「新しいルール」を開き、数式を使用するルールを選択します。
数式の入力欄には、次のように入力します。
=AND($C2<>"",$C2<TODAY(),$D2<>"完了")
最後に、背景色や文字色を設定します。
条件付き書式で行全体に色を付ける詳しい操作方法や「$」の意味については、関連記事「Excelの条件付き書式で行全体に色を付ける方法|数式と「$」の意味をやさしく解説」で解説しています。
5. 空白に見えるのに色が付く場合の注意点
空白を除外する数式を設定しても色が付く場合は、セルに空白文字が入力されている可能性があります。
見た目は空白でも、スペースが入っているセルは、Excelでは完全な空白として扱われません。
一度セルを選択してDeleteキーで内容を消し、色が消えるか確認してみましょう。
また、数式によって""を表示しているセルも、完全に何も入力されていないセルとは仕組みが異なります。元のデータや数式も確認することが大切です。
6. まとめ
条件付き書式で空白セルまで色が付く場合は、「空白ではない」という条件を数式に追加します。
期限日が入力され、今日より前の日付になっている行だけを判定する数式は次のとおりです。
=AND($C2<>"",$C2<TODAY())
さらに、完了した行を除外する場合は次のようにします。
=AND($C2<>"",$C2<TODAY(),$D2<>"完了")
条件付き書式では、色の設定だけでなく、「どのデータを判定の対象にするか」を考えることが重要です。
表を1行1データの形で作り、期限日や状況をそれぞれ同じ列に入力しておけば、空白の除外や期限切れの判定も正しく行いやすくなります。