

突然ですが、ExcelにはTODAY関数があるのに、YESTERDAY関数がないのはナゼでしょう?
実はExcelにはとんでもない黒歴史があって、決して過去をふりかえりたくないのでしょうか?
別にそんなわけではありません。じゃあ、TOMORROW関数は?
答えは簡単ですね。
Excelは”表計算ソフト”なので、今日の日付さえわかってしまえば、昨日も、明日も明後日も、カンタンに足し引き計算できてしまうからです。
※Wolframなど一部のプログラミング言語では、YESTERDAY/TOMORROW関数などが標準で用意されているようです。
今回は、日頃あまり深く考えずに使っているTODAY関数、すこし別の使い方をしたら、「さらに便利になりますよ!」という事例を、いくつかご紹介します。
TODAYは、Excelブックを開いた時点の日付を自動的に返してしまうので、気をつけましょう
まずは構文の確認から。
=TODAYに引数なしのカッコ () を付ければ、今日の日付を返すTODAY関数のできあがりです。カッコがないと、関数とみなされないので気をつけてくださいね。




一番最初に思いつくのが、Excel書類へタイムスタンプがわりに使うこと。たとえば、見積書や請求書の右肩に書類作成日を記載することが一般的ですが、ここにTODAY関数を入れる方法です。


ただし、これも新人さんなどの”やらかし列伝”によく出てくる話として、TODAY関数が入ったままのExcel書類を、上司・同僚や第三者へ直接渡すことはやめておきましょう。
TODAY関数は、Excelブックを開いた時点の日付を返す関数なので、編集日や出力日が初回書類作成日とちがえば、タイムスタンプ(その日付以降に修正・編集がない証明)的には使えないことになります。
このような場合には、作成した書類をその時点でプリントアウト/PDF保存してしまうか、関数の使用をやめてショートカット「Ctrl + ;」で、日付のシリアル値を呼び出すようにしましょう。


「じゃあ、別にTODAY関数なんて、そんなに使い道ないんじゃない?」と思ったアナタ、もう少し突っ込んで考えてみましょう!
TODAY関数は、代表的なExcel関数の1つなので、標準機能として、他のExcel関数の引数(入れ子)にすることができます。「今日を起点とするExcel関数の起動」が必要な書類は、現場に山ほどあるんじゃないですか?
次章で具体例を見てみましょう。
別の関数へ、引数TODAY()を入れれば、日数計算がラクになります
例えば、前章でご紹介した見積書テンプレートの事例。
書類作成日を基準に、翌月末までを見積有効期限とするならば、備考欄に
=EOMONTH(TODAY(),1)
と入力すればよいのです。
※EOMONTH関数は、指定された月数だけ前または後の月の最終日に対応するシリアル値を返す関数です。第2引数が1なら翌月、2なら翌々月、0なら当月ということになります。


また、IF関数とTODAY()を組み合わせれば、期限切れを自動判定するアラート資料がつくれます。請求書の支払い期限や、プロジェクト締切日が過ぎているかを判定し、メッセージを表示してくれるのです。
=IF(参照する日付<TODAY(),”期限切れ”,”期日内”)
店休日などがある店舗・企業の営業日計算には、WORKDAY関数との組み合わせが便利です。たとえば、参照する日付から数えて、3営業日後を出荷日とする場合には、
=WORKDAY(TODAY(),3)
とすればよいのです。
さらに、DATEDIF関数とTODAY()を組み合わせると、起算日(プロジェクトの開始日や契約日など)から、今日までの経過日数を自動で計算できます。
=DATEDIF(参照する日付,TODAY(),”D”)
※参照する日付に、開始日や契約日などを指定。
※”D”が日数。経過月数を算出したい場合は”M”、経過年数を算出したい場合は”Y”を使用。
最後に、条件付き書式の条件式へTODAY()を入れるとどうなるか、以下のサンプル動画をご覧ください。
<MP4.mp4を挿入>
※上記動画は、Excel for MacのMicrosoft 365版を画面キャプチャしました。
「ある特定の日付」のみを色づけしてフォーカスさせる場合は、条件付き書式の条件式に「ある特定の日付」を指定するセルを参照させます。
しかし、ここをTODAY()に置き換えると、まさにExcel操作をしている当日の予定のみがフォーカスされることになります。
しかも!
前章で触れたように、TODAY()関数が参照する日付は、”いま作業中のパソコンに内臓されるカレンダー/時計の情報”を自動でひろいますので、2日後に同じ書類を開けば、一切操作することなく、2日後の予定が色つきでフォーカスされることになるのです。
ね?
関数や条件付き書式の中にTODAY()を入れ込むと、たとえばプロジェクト管理などがとってもラクにできるような気がしませんか?
まとめ;TODAY関数が参照する日付はパソコン内カレンダー タイムスタンプの代わりにはなりませんが、他の関数と一緒に使って、プロジェクト日程管理などを時短しましょう
以上、TODAY()をただ当日日付表示のためだけに使うのではなく、ちょっとひねって、文書づくりに役立てる方法をご紹介しました。
TODAY()を引数に使えるExcel標準関数は、上例以外にも多数あります。ぜひご自身の業務書類作成に、いろいろ活用してみてくださいね。それより、アタマの中はHOLIDAY関数のことでいっぱいですかねぇ…(実際には、Excel標準関数にHOLIDAYはありませんが…勤労あるのみ? 汗;)



PS.浪人生にとっても、TODAYは関心の高いトピックのようですね。
Today is not Sunday.
(東大は駿台ではない)
It’s Monday.
(それが問題である) 苦笑… 出所





