Excelの期限管理を自動化|作業漏れを仕組みで防ぐタスク管理表の作り方
「あの連絡、やっていなかった」を気合いではなく仕組みで防ぐ方法です。EDATE・TODAY・IF関数と条件付き書式を組み合わせれば、前回の日付を入れるだけで今日やるべきことが自動で色付きで浮かび上がります。Googleスプレッドシートでも同じ数式で動きます。
「あの件の連絡、忘れてた…」
事務の仕事をしていると、この冷や汗、一度は経験するんじゃないでしょうか。
僕も普段は事務の仕事をしていて、契約書や請求書など「期限のあるもの」を毎日さわっています。正直に言うと、いまだに帰り道でふと「あれ、あの件どうなってたっけ」と不安になって、翌朝いちばんにフォルダを開き直すことがあります。思い出せたときはいいのですが、思い出せなかった分は、そもそも思い出せていないわけで。そこがいちばん怖いところです。
契約の更新案内、定期点検のお知らせ、担当先へのフォロー連絡。
どれも「前回から一定期間たったら連絡する」という同じ形をしています。でもこの手の仕事は、締め切りが人によってバラバラなのが厄介です。
カレンダーに予定を入れて管理している方も多いと思います。ただ、それでも**「本当に全員分入っているんだろうか」という不安は消えません**。入れ忘れが1件あったら、その1件は永遠に浮かんでこないからです。
そんなときは、気合いや記憶力ではなく、仕組みで解決しましょう。

「気をつける」「忘れないようにする」という対策は、どれだけ意識しても再発します。意識に頼っているからです。それよりも、そもそも漏れが起きない形に表を作り替えてしまえば、意識しなくてよくなります。
この記事では、前回の日付を1つ入れるだけで、「今日やるべきこと」が自動で浮かび上がるタスク管理表の作り方を紹介します。使うのはExcelの標準機能だけ。マクロもプログラミングも不要で、慣れれば10分で作れます。
そして、作るのが面倒な方のために、数式と色分けを入れ終えたExcelファイルを記事の最後に置いておきます。ダウンロードして名前を書き換えれば、今日から使えます。
この記事でわかること
- 前回の日付から「次回の期日」を自動計算する方法(EDATE関数)
- 「そろそろ連絡すべき人」を自動で判定して色をつける方法(TODAY・IF関数+条件付き書式)
- Googleスプレッドシートでも同じ数式がそのまま使えること
- 「登録し忘れ」という状態そのものをなくす表の組み方
- 完成した表をそのままダウンロードできます(記事末尾・登録不要)
結論:入力するのは「前回の日付」だけ
先に完成形をお伝えします。
この表で人が手入力するのは、「契約開始日」と「案内した日」の2列だけです。それ以外の「次回の期日」「いつ案内すべきか」「今どういう状態か」は、すべて数式が自動で埋めます。
そして期日が来た人だけ、行が赤く光ります。
つまり毎朝この表を開いて、赤い行の人にだけ連絡すればいい。一覧を上から目で追う必要も、蛍光ペンで印をつける必要もなくなります。
なぜカレンダー管理だと漏れるのか
たとえば、賃貸物件の契約更新を担当している事務の方を想像してみてください。担当物件が80件あって、契約はそれぞれ違う時期に始まっています。当然、更新月もバラバラです。
この状態でカレンダー管理をすると、こうなります。
- 新しい契約が始まるたびに、2年後のカレンダーに予定を入れる
- でも、予定を入れる作業自体を忘れたら、その1件は二度と浮かんでこない
- 不安になって、結局月初に一覧を印刷して目で追ってしまう
問題は「カレンダーが悪い」ことではありません。人が毎回、手で登録しないと成立しないという点です。登録を忘れる可能性がある限り、不安は消えません。
これから作る表は、そこを逆にします。契約の情報を1行書けば、期日の計算も判定も勝手についてくるので、「登録し忘れ」という状態がそもそも発生しません。

作る表の全体像
こういう表を作ります。

| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | 入居者 | 物件・部屋 | 契約開始日 | 契約満了日 | 案内予定日 | 案内した日 | ステータス |
| 2 | 佐藤さん | メゾン青葉 201 | 2024/10/15 | 2026/10/15 | 2026/08/15 | 要連絡 | |
| 3 | 高橋さん | パークハイツ 305 | 2024/12/01 | 2026/12/01 | 2026/10/01 | まだ先 | |
| 4 | 鈴木さん | グリーンコート 102 | 2024/09/20 | 2026/09/20 | 2026/07/20 | 2026/07/25 | 案内済み |
手で入れるのは C列(契約開始日)と F列(案内した日)だけ。 D・E・G列は数式です。
作業は4ステップ、全部で10分ほどです。順番に作っていきます。
① 次回の期日を自動で出す(EDATE関数)
D2(契約満了日)に、次の数式を入れます。
=EDATE(C2,24)
EDATE は「指定した月数だけ後(または前)の日付」を返す関数です。ここでは2年契約なので 24ヶ月後を指定しています。
半年ごとの点検なら 6、1年ごとの更新なら 12 に変えるだけです。
つまずきポイント:Excelでは、EDATEの結果が「45951」のような数字で表示されることがあります。これはエラーではなく、セルの表示形式が「標準」になっているだけです。そのセルを選んで、表示形式を「日付」に変えれば直ります。
② 「いつ案内するか」を逆算する
期日当日に連絡したのでは遅いので、手前の日付を出しておきます。E2(案内予定日)にはこう入れます。
=EDATE(D2,-2)
マイナスを指定すると、その月数だけ前の日付になります。これで「契約満了の2ヶ月前」が自動で出ます。
日数で指定したい場合は、引き算でも書けます。
=D2-60
「2ヶ月前」なら EDATE、「60日前」なら引き算、と使い分けてください。月末の扱いがずれにくいのは EDATE のほうです。
ここまでで、手で入れるのは「契約開始日」だけになりました。

③ 今どういう状態かを判定する(TODAY・IF関数)
ここが仕組みの心臓部です。G2(ステータス)に入れます。
=IF(F2<>"","案内済み",IF(TODAY()>=E2,"要連絡","まだ先"))
読み下すとこうなります。
- F列(案内した日)に日付が入っていたら → 「案内済み」
- そうでなくて、今日が案内予定日を過ぎていたら → 「要連絡」
- どちらでもなければ → 「まだ先」
TODAY() は今日の日付を返す関数です。ファイルを開くたびに自動で更新されるので、日付を打ち替える必要はありません。昨日「まだ先」だった人が、今日になったら勝手に「要連絡」に変わります。

IF関数の入れ子(IFの中にIF)が不安な方は、Excel IF関数の使い方で基本から確認できます。
④ 色で目立たせる(条件付き書式)
最後に、「要連絡」の行を赤くします。文字だけだと、結局目で探すことになるからです。
- A2からG列の最終行までを選択する
- 「ホーム」→「条件付き書式」→「新しいルール」
- 「数式を使用して、書式設定するセルを決定」を選ぶ
- 数式に次を入力する
=$G2="要連絡"
- 「書式」から塗りつぶしの色(薄い赤など)を選んでOK
$G2 のように列だけに $ をつけるのがポイントです。これで「G列の値を見て、行全体を塗る」という動きになります。

条件付き書式の考え方は、Excelカレンダーの土日に自動で色をつける方法でも同じ仕組みを使っています。あわせて読むと理解が早いです。
Googleスプレッドシートでも同じ数式で動きます
ここまでの数式(EDATE・TODAY・IF)は、Googleスプレッドシートでもそのまま同じように動きます。書き換えは不要です。
条件付き書式も同じ考え方で設定できます。メニューの場所だけ違います。
- Excel:「ホーム」→「条件付き書式」
- スプレッドシート:「表示形式」→「条件付き書式」→「カスタム数式」
スプレッドシートで作ると、スマホからも同じ表を確認できるという利点があります。外出先で「今日の連絡先」を見たい場合は、こちらのほうが便利かもしれません。
よくある質問
Q1. 「2年後」ではなく「90日後」で管理したいのですが
日数で管理する場合は、EDATEではなく単純な足し算にします。
=C2+90
日付に数値を足すと、その日数だけ後の日付になります。月をまたいでも自動で計算されるので、月末を気にする必要はありません。
Q2. 案内予定日が土日にあたったら、翌営業日にできますか
WORKDAY 関数を使うと、土日を避けた日付を出せます。
=WORKDAY(E2-1,1)
少し変わった書き方に見えますが、これは「1日前に戻ってから、1営業日ぶん進む」という意味です。こう書くと、案内予定日が平日ならその日のまま、土日なら翌月曜日になります。
なお =WORKDAY(E2,0) と書きたくなりますが、0日を指定すると元の日付がそのまま返るだけで、土日を避けてくれません。ここは間違えやすいところです。
祝日も避けたい場合は、どこかのセルに祝日の一覧を作って、3つめの引数で指定します。
=WORKDAY(E2-1,1,$J$2:$J$20)
Q3. Mac版のExcelでも動きますか
はい。この記事で使っている EDATE・TODAY・IF・WORKDAY は、いずれも古くからある標準の関数なので、Mac版のExcelでも問題なく動きます。
Excelには比較的新しい関数(FILTER・SORTBYなど)もありますが、バージョンによっては使えないことがあります。社内の全員が同じ表を使う場合ほど、古い関数だけで組んでおくほうが安全です。
Q4. 契約満了日は「開始日の2年後の前日」では?
契約の種類によってはそのとおりです。その場合は末尾に -1 を足してください。
=EDATE(C2,24)-1
実務のルールに合わせて調整できるのが、自分で組む表の良いところです。
この仕組みが向く業務・向かない業務
正直に書きます。この表は万能ではありません。
向いているのは、期日が「前回+一定期間」で機械的に決まる業務です。
- 契約の更新案内
- 定期点検・メンテナンスの案内
- 資格や免許の更新確認
- 定期購入者へのフォロー連絡
逆に、向いていないのは期日が交渉や相手の都合で毎回変わる業務です。案件ごとに締め切りがバラバラで、そもそも計算式で決まらないものは、この表に載せても手入力が増えるだけになります。
判断の基準はシンプルで、「次の日付を、計算で出せるかどうか」です。出せるなら自動化する価値があります。
Excelテンプレートのダウンロード
ここまでの数式と色分けを、すべて入れ終えた状態のExcelファイルです。
架空のサンプルが6件入っているので、名前と日付を自分のものに書き換えるだけで動きます。
- 黄色いセルだけ入力すれば、白いセルは自動で計算されます
- 更新の間隔を設定欄にしてあります。記事では「24ヶ月」と直接書きましたが、テンプレートでは上部のセルに
24と入れる形にしました。半年ごとの点検なら6、1年ごとなら12に変えるだけで、全行いっせいに切り替わります - 「何ヶ月前に案内するか」も同じく設定欄です
- 30行ぶん、あらかじめ数式を入れてあります(空の行は何も表示されません)
- 条件付き書式の設定済み。「要連絡」になった行は自動で赤くなります
- Googleスプレッドシートにアップロードしても、そのまま動きます
- 登録もメールアドレスも不要です。そのまま職場で使ってください
まとめ
EDATEで次回の期日を自動計算するEDATE(期日,-2)で案内すべき日を逆算するTODAYとIFで「要連絡/まだ先/案内済み」を自動判定する- 条件付き書式で「要連絡」の行を光らせる
これだけで、カレンダーに登録し忘れる余地そのものがなくなります。人が覚えておく必要があるのは、「毎朝この表を開く」ことだけです。
「やっていなかった」は、注意力の問題に見えて、実は仕組みの問題です。注意力を増やすのは難しいですが、仕組みは今日から変えられます。
さらに先へ:期日が来たら自動で知らせる
この表は「開けば分かる」状態までを作るものです。もう一段進めると、期日が来たら自動でメールの下書きを用意するところまで自動化できます。
表の管理はExcelやスプレッドシートで行い、通知や文面の作成はAIに任せる、という組み合わせです。実際にメールの下書きまで自動化した例は、Gmail返信をAIに任せたら、1日30分浮いた話で紹介しています。
「表を見に行く」から「向こうから知らせてくれる」へ。そこまで行くと、連絡漏れの不安はほとんどなくなります。
関連記事: