Excelで文字付き日付(例:同9/7)を判定して条件付き書式で色を変える方法

Excel

Excelでは通常の日付データであれば、条件付き書式を使って「今日から10日以上先の日付だけ色を変える」といった管理ができます。しかし、日付の前に文字を付けた「同9/7」のような入力になると、Excelは日付ではなく文字列として扱うため、そのままでは日付計算ができません。

この記事では、通常の日付と文字付きの日付が混在している表でも、条件付き書式を利用して指定した期間だけセルの色を変更する方法を解説します。

Excelが「同9/7」を日付として認識しない理由

Excelの日付は内部的にはシリアル値という数字で管理されています。例えば「2025/9/7」という入力は、Excel内部では計算可能な日付データとして保存されています。

一方で「同9/7」のように文字が入ると、Excelはこれを文字列として認識します。そのため、単純に「今日より10日以上先か」という条件を設定しても正しく比較できません。

このような場合は、文字部分を除いて日付だけを取り出し、Excelに日付として計算させる必要があります。

文字付き日付を条件付き書式で判定する方法

例えばE列に日付が入力されている場合、条件付き書式では数式を使って判定できます。

「同9/7」のような形式を含む場合は、LEFT関数やRIGHT関数、MID関数などを利用して日付部分だけを取り出します。

例として、E1のセルに「同9/7」が入っている場合、日付部分を取得する考え方は以下のようになります。

=DATEVALUE(RIGHT(E1,4))

ただし、入力形式によって文字数が変わる場合は調整が必要です。例えば「同9/7」「予定9/7」「9/7」などが混在する場合は、より柔軟な数式に変更します。

日付と文字付き日付が混在する場合の条件付き書式設定

日付だけの場合と文字付きの場合が混在するなら、IF関数で条件を分ける方法が便利です。

例えばE1の値を確認して、文字が含まれる場合だけ日付へ変換する場合は、以下のような考え方になります。

=IF(ISNUMBER(E1),E1,DATEVALUE(RIGHT(E1,LEN(E1)-1)))>TODAY()+10

この数式では、E1が通常の日付ならそのまま使用し、文字列なら先頭の文字を除いて日付として計算します。

これを条件付き書式の数式として設定すれば、B1~K1など行全体の色を変えながら、E列の日付条件だけを基準に判定できます。

B列からK列まで行全体を色変更する設定方法

例えばE列の日付を基準にB1~K1全体の色を変更したい場合は、条件付き書式を設定する範囲を「B1:K100」など対象範囲にします。

その上で、数式はE列だけを見るように固定します。

=$E1>TODAY()+10

のように列だけ固定することで、各行のE列の日付を確認しながらB列からK列まで同じ条件で色付けできます。

さらに、E列だけ別の色にしたい場合は、E列専用にもう1つ条件付き書式を作成します。例えばE列には赤色、B~K列には黄色というように複数条件を組み合わせることができます。

10日以内になったら元の色へ戻す仕組み

条件付き書式は条件に一致した場合だけ色を変更する機能です。そのため、「今日から10日以上先」という条件を設定しておけば、日付が近づいた時点で自動的に色が解除されます。

例えば今日が8月31日で、入力日が9月15日の場合は赤色になります。しかし9月5日になり10日以内になると、条件から外れるため自動的に通常の色へ戻ります。

手動で色を変更する必要がないため、予定管理表や納期管理表などにも便利な方法です。

入力ルールを統一するとトラブルを防げる

Excelで日付管理をする場合、最も重要なのは入力形式を統一することです。「同9/7」のような見た目を残したい場合でも、別の列に正式な日付データを保存する方法が最も安定します。

例えばA列に表示用の「同9/7」、B列に計算用の日付「2025/9/7」を入力しておけば、条件付き書式や並び替え、期間計算も簡単になります。

どうしても1つのセル内に文字と日付を入れたい場合は、今回紹介したように数式で日付部分を取り出して判定する方法を利用すると対応できます。

まとめ|文字付きの日付でもExcelの条件付き書式で色変更は可能

Excelでは「同9/7」のような文字付きの日付は、そのままでは日付として認識されません。しかし、数式で日付部分を取り出せば、通常の日付と同じように条件付き書式で管理できます。

B列からK列の行全体を色変更したい場合は、E列の日付を参照する条件付き書式を設定し、文字付きの日付についてはDATEVALUEなどで変換するのがポイントです。

入力形式が複雑になるほど数式も複雑になりますが、日付として扱うための列を別に用意する方法が最もトラブルが少なく、長期的な管理にはおすすめです。

コメント

タイトルとURLをコピーしました