スプレッドシートの使い方

Googleスプレッドシート・条件付き書式

期限切れなのに未完了の行だけ、赤くする方法

期限が過ぎたタスクを目立たせたい。でも、完了済みまで赤くなるのは困る。Googleスプレッドシートの条件付き書式なら、日付と進捗の両方を見て行全体を色付けできます。さらに、対応が必要な残件数も自動で数えられます。

まず色付けの数式を見る
期限切れで未完了の2行だけ赤くなり、完了した行や未来の期限の行は色を付けない管理表の完成イメージ。期限超過の残件数は2件。
期限超過と未完了が重なった行だけ赤くする、完成結果の説明図。実画面の写真ではありません。

完成すると、期限超過の2行だけ赤くなる

次のような管理表を例にします。期限は「今日」を基準にした相対的な日付で、配布用のGoogle Sheetsでも日付が自動更新される設定です。

表示結果の説明図(Google Sheetsの画面キャプチャではありません)
案件(A列)担当(B列)期限(C列)状態(D列)
納品書作成吉田2日前未完了
取引先への返信田中1日前完了
見積確認佐藤2日後未完了
入金確認吉田今日未完了
顧客資料確認田中空欄未完了
会議案内佐藤1日前進行中
期限切れ・未完了2件納品書作成を「完了」にすると1件に

この設定では「進行中」もまだ終わっていない作業として扱います。一方、昨日が期限でも「完了」とした行は赤くしません。今日が期限の行もまだ期限切れではありません。

まずA列〜D列に案件・期限・状態を用意する

1行目に「案件」「担当」「期限」「状態」の見出しを作り、2行目からデータを入力します。C列は必ずGoogleスプレッドシートが日付として認識できる値にしてください。「2日前」という文字列を直接入力するのではなく、実際の日付を入力します。

試したい場合、C2に =TODAY()-2、C3に =TODAY()-1、C4に =TODAY()+2、C5に =TODAY()、C7に =TODAY()-1 と入力し、C6は空欄にします。上の表と同じ結果になります。

状態は「未完了」「進行中」「完了」など、普段の管理表で使っている文字を入れます。この例では 「完了」だけを除外します。

行全体を赤くする条件付き書式

  1. A2:D100 を選択します。色を付けたい列をすべて含め、見出し行は選択しません。
  2. 上部メニューの [表示形式]→[条件付き書式] を開きます。
  3. 右側に表示される[セルの書式設定の条件]から[カスタム数式]を選び、次の式を入力します。
  4. 書式設定スタイルで淡い赤を選び、[完了]を押します。
A2:D100を選択し、表示形式、条件付き書式、カスタム数式、淡い赤の背景色の順に指定する4段階の説明図。
選択する範囲と設定順序。式は直下からコピーできます。実際のメニュー画面を再現した画像ではありません。
A2:D100 に適用するカスタム数式
=AND(ISNUMBER($C2),$C2<TODAY(),$D2<>"完了",$A2<>"")

この式は、期限が正しい日付で、今日より前で、状態が「完了」ではなく、案件名が空ではない場合にだけTRUEになります。Google公式の条件付き書式ヘルプでも、カスタム数式で他の列を参照し、行全体に書式を設定する方法が案内されています。

ISNUMBER($C2):期限が日付として保存されているか確認。文字列や空欄は除外します。

$C2<TODAY():昨日以前の期限だけを対象にします。当日は対象外。

$D2<>"完了":完了した案件は対象外。進行中・未完了は対象です。

$A2<>"":案件名が空の行を対象外にします。

ここが重要: $C2 の $ は列を固定しています。行番号まで $C$2 と固定すると、すべての行が同じC2だけを見るため、誤った色付けになります。

期限切れの残件数も自動で数える

赤い行を探すだけでなく、まだ対応が必要な件数も把握したい場合は、F1に「未完了の期限超過」、G1に次の式を入力します。

G1 に入力する集計式
=COUNTIFS(A2:A100,"<>",C2:C100,">0",C2:C100,"<"&TODAY(),D2:D100,"<>完了")

サンプルでは結果が2になります。納品書作成のD2を「完了」に変えると1になり、条件付き書式の赤色も消えます。D2を「未完了」に戻せば2です。この変化は実際のGoogle Sheetsでも確認しています。

納品書作成が未完了のときは2行が赤色。完了にすると納品書作成の赤色が消え、期限超過の件数が2件から1件に減る比較図。
「納品書作成」を完了に変更した前後の違い。数値は実Sheetsで検証済みですが、画像は説明用の図です。

この件数式では、C列が正の数値であることを確認しています。通常の日付は数値として保存されますが、日付以外の数値をC列に入れている場合は正しく数えられません。C列には日付だけを入力してください。

思った通りに赤くならないとき

期限が過ぎているのに白いまま
C列の見た目が日付でも、実体が文字列になっている場合があります。元の値を確認し、日付として入力し直してください。書式だけ日付に変えても直らないことがあります。
完了したのに赤い
状態の表記が「完了」ではなく「済」「完了済」などになっていないか確認。式に書いた文字と一致させます。
すべての行が赤くなった
適用範囲が A2:D100 か確認します。式の参照が $C$2 でなく $C2 になっているかも確認してください。
期限当日も赤くしたい
今日も対象にする運用なら $C2<TODAY() を $C2<=TODAY() に変更します。残件数の式も "<"&TODAY() から "<="&TODAY() に揃えます。
数式と行の色で判定が違う
範囲の開始行、期限列、状態列、空欄判定を照合してください。色付けの式とCOUNTIFSの式は同じ条件を意図しているため、列や対象行がずれていないかが最優先です。

自分の表に合わせて変更するには

期限がE列、状態がF列なら、条件式の $C2 を $E2、$D2 を $F2 に置き換えます。適用範囲は、実際に色を付けたい行全体へ広げてください。ほかの人と共有している表は、まずコピーで動作を確かめると安全です。

関連する操作として、状態をプルダウンから選ぶ方法と、長い表で見出し行を固定する方法も役立ちます。

参照:Google公式・条件付き書式/TODAY関数/COUNTIFS関数