このページで学べること|TODAY・NOWの使い方
診療所を舞台にIF関数とIFS関数の考え方を学んできました。
また、その過程でAND関数、OR関数、IFERROR関数までも学習することができました。
今回は少し毛色を変えて、「日付」と「時間」を扱う、TODAY関数とNOW関数を学びます。
手元のカレンダーや時計を見なくても、スプレッドシート上で日時がわかるのは非常に便利です。

この物語の案内役MISATOです。
今回は、「日時を表す」関数を学んでいきましょう。舞台は、引き続き診療所です。
【TODAY関数の使い方】現在の日にちを表示する


ここでは、患者さんのリストを作っているのですね。
具体的には何をしているところなのでしょうか?

私は「日にち」の関数。
ちょうど今は、「現在の日にち」を教えてあげているところなの。

A1に入力された式: =TODAY()

カッコの中には何も書かなくて大丈夫よ。
これだけで「今日」の日付が入るので、表の隅に私を置いておく人は多いわ。
【NOW関数の使い方】|今の時間を表示する


待ちくたびれている患者さんがいるようですね。どのくらい待っているのでしょうか。

じゃあ、私の出番ね。
私は「現在時刻」を表示できるわ。
どのくらい待っているのか計算するために、まずは現在時刻を表示するわね。

F1に入力された式: =NOW()

あら?NOW関数さんは、日にちも時間も表示できるのですね。知りませんでした。

ええ、そうよ。
だけど今回は日にちはTODAYさんが表示させてくれているから、私は時間だけでよさそう。
表示形式からシンプルに変えてもらえるかな?

承知しました!
「表示形式」→「数字」→「カスタム日時」からシンプルな表示に変えておきますね。


ありがとう!
これで私も患者さんにわかりやすく情報を提示できるようになったわ。
標準仕様だと、どうしても情報過多になってしまうのよ。
裏では日にちも動いているけれど、表示上は「時間」だけで十分なことも多いの。
そのあたりは用途に合わせて調整してみてね。

あとは、NOWさんが表示してくれている時間と、来院時間を引く数式を入れると待ち時間が表示されますね。


私は「現在の時刻」を表示し続けるから、固定された来院時間との差を計算する式を入れてくれれば、待ち時間が私の表示に合わせて変動していくわ。
F3に入力した式: =$F$1-E3

E3がティオさんの来院時間。
F1がNOWさんが表示してくれた現在時刻。
常にF1を参照するので、絶対参照を使って式を入れておきました。

NOWさんもそうだけど、私もよく比較の時に使われるから、私たちと一緒に絶対参照は是非覚えておいて欲しい機能ね。

では、また別な機会に「絶対参照」について読者のみなさまにはご説明しておきますね!

ぜひお願い!!
私たちを使いこなすには理解しておいてもらいたい機能だわ。
あと、ついでと言ってはなんだけど、待ち時間の表示形式もパッとみてわかりやすい方がいいわよね。

アナログ時計のような表記よりも、何時間待っているのか感覚的にわかりやすい表示に直しておきますね。


こんなに長い時間待っているのね。
ちょっと、中の様子みてきてあげるわ!
早く診てもらいましょう。
⚠️エラー発生?!|時刻が更新されていない?



現在時刻が15:10。
NOW関数はまだ15:00の表示のようで、患者さんが困惑しています。

ごめんなさい。
私は「リアルタイム」表示はできないの。
ページを開き直したり、計算をし直すきっかけがあれば最新の情報を表示できるのだけど…

私もそうよ。
日付が変わる頃に作業をしていて、「日付が変わっていない」と困惑する方もいるみたい。
リアルタイム表示ではなく、多少のラグがあることは理解してもらいたいところね。

多少のズレはご理解いただきたい、ということですね。
《実践編》|タスク管理・進捗管理
日にちや日時を表示するTODAYとNOW関数。
これらは、タスク管理などで使われることが多い関数です。
単純に関数の便利さだけではなく、書式の設定と併せることで威力を発揮する関数たちです。
ここでは、書式の設定も併せて学習してみましょう。

・A1に入力した式: =TODAY()
・H1に入力した式: =NOW()
①D3に入力した式: =C3-$A$1
②G3に入力した式: =$H$1-F3
③H3に入力した式: =IF(OR(E3=”折り返す”,G3>TIME(1,0,0)),”再連絡”,”様子見”)
解説
①の解説:
C列には、プロジェクト期日を手入力しています。
そのため、A1に入力されたTODAY関数との比較によって、D列には常に「あと何日?」が計算され表示されるようになります。
②の解説:
F列には、最終コンタクト時間を手入力しています。
そのため、H1に入力されたNOW関数との比較によって、G列には「最終コンタクトからどのくらいの時間が経過したのか」が表示されるようになります。
このように、「差」を利用して、タスクの進捗管理をすることが業務上ではよくあります。
さらに、これに併せて条件付き書式を設定することによって、視覚的にも確認しやすくなり、業務効率化につながります。
D列の条件付き書式:
7日以下の値になった場合に赤くセルが染まります。
14日以下の値になった場合に桃色にセルが染まります。
条件付き書式については別の記事にて解説します。
③H列には、ステータスが「折り返す」または「経過時間が1時間を超えた場合」に「再連絡」が表示される式が入っています。
H列には、「様子見」の場合は水色にセルが染まり、「再連絡」の場合は桃色にセルが染まるようになっています。
こうすることで、先方とのやりとりから次にどうアクションを起こせばいいのかを一目でわかるようになるのです。
まとめ
TODAY関数とNOW関数は「現在」を基準に計算する関数です。
そのため、日付や時間の「差」を扱う場面で特に力を発揮します。
実践編のように「差」を利用し、条件付き書式を併せて活用することで、その便利さを実感できる場面が増えるでしょう。
もちろん「差」の利用だけでなく、ユーザーのアイディア次第でさまざまな場面で活用できる関数です。
次回は、ちょっと苦手意識を持つ人もいるLOOKUP、VLOOKUP、HLOOKUP、XLOOKUP関数のご紹介です。
探し物が得意なLOOKUPの仲間たちを使いこなせるようになると、業務がグンとはかどります。
お楽しみに!
