STUDY387

エクセルで仕事をもっと簡単にしよう

TO DOリストのエクセル小技4:期限までの残日数を表示する(含:休日)

time 2014/09/07

TO DOリストのエクセル小技4:期限までの残日数を表示する(含:休日)
※ エクセル2013で説明しています。

TO DOリストのエクセル小技の4回目は、期限までの残日数を表示する方法です。今回は残日数を延べ日数で計算します。
excel-todolist04-01

仕事で使う場合、休日を除いた稼働日数で表示したい人もいるでしょう。その方法は次回ご紹介する予定です。

残日数を計算する式は「=DATEDIF(TODAY(),期限のセル番地,"D")」です。DATEDIF関数は開始日と終了日を指定して、その間の年数、月数、日数などを計算する関数です。従って、開始日に今日の日付(=TODAY関数)、終了日に期限日、"D"(日数を計算するためのDATEDIF関数特有の引数)を指定します。
excel-todolist04-02

ちなみに、期限の日付と現在の日付がイコール(今日が締切日だ!という時)だと残日数がゼロで表示されます。
excel-todolist04-03

もし今日が締切日のときに残日数を1で表示したいならば、「=DATEDIF(TODAY(),期限のセル番地+1,"D")」に式を修正してください。
excel-todolist04-04

これでほぼ完成なのですが、欠点があります。それは、期限が空白だったり、期限を過ぎたりすると、エラー表示になる点です。
excel-todolist04-05

エラー表示をなくすには、「=IF(ISBLANK(期限のセル番地),"",IF(期限のセル番地<TODAY(),"期限超",DATEDIF(TODAY(),期限のセル番地,"D")))」を入力します。下の表の例だと「=IF(ISBLANK(D3),"",IF(D3<TODAY(),"期限超",DATEDIF(TODAY(),D3,"D")))」になります。
excel-todolist04-06

式を解説しますね。まず最初にISBLANK関数で期限の入力有無の判断をしています。その判断に基づき、IF関数で期限が未入力ならば空白("")を表示し、入力ならば次のIF関数に進みます。
excel-todolist04-07

次のIF関数では、期限が現在の日付よりも小さいかを判断し、小さければ期限超を表示し、同じか大きければDATEDIF関数で残日数を計算して表示しています。
excel-todolist04-08

入れ子のIF関数で式が長いのですが、がんばって読み解いてみてください!

まとめです。

  • 残日数を計算する式は「=DATEDIF(TODAY(),期限のセル番地,"D")」です。
  • 現在の日付と期限日が同日の場合、上記の式では残日数がゼロになります。1にしたい場合は、第2引数を「期限のセル番地+1」にします。
  • 期限の空白や期限過ぎによるDATEDIF関数のエラーを非表示にするには、「=IF(ISBLANK(期限のセル番地),"",IF(期限のセル番地<TODAY(),"期限超",DATEDIF(TODAY(),期限のセル番地,"D")))」を入力する。

お役に立ちましたか?ご活用ください♪

sponsored link



sponsored link

sponsored link

何はともあれOFFICEのことならマイクロソフト。意外とキャンペーンやっています。

コピー用紙あったかな?トナーもあったかな?事務用品はアクスルへGO!