スプレッドシートのTODAY関数の使い方|今日の日付を自動表示

スポンサーリンク

「期限日まであと何日だっけ?」と毎回カレンダーを見て数えていませんか?

手作業で日付を入力すると、更新を忘れてしまうこともありますよね。

GoogleスプレッドシートのTODAY関数を使えば、今日の日付を自動で表示できます。期限管理や日数計算もラクになりますよ。

この記事では、TODAY関数の基本から応用テクニックまで解説します。

TODAY関数とは|スプレッドシートで今日の日付をセルに自動表示する関数

TODAY関数は、今日の日付を自動で返す関数です。読み方は「トゥデイ関数」。

ファイルを開くたびに日付が自動更新されます。手入力のように古い日付が残る心配がありません。

期限管理や日数計算の基準日として、ビジネスシーンでよく使われます。

基本の使い方と入力方法

TODAY関数の構文はとてもシンプルです。

=TODAY()

引数(カッコの中に入れる値)は不要です。カッコの中は空のまま入力してください。

セルに =TODAY() と入力してEnterを押すだけ。これで今日の日付が表示されます。

もし日付ではなく「46098」のような数値が表示される場合は心配いりません。表示形式の設定を変えるだけで直ります。

該当セルを選択して、メニューの「表示形式」→「数字」→「日付」を選んでください。

TODAY関数が返すのは「シリアル値」という数値です。スプレッドシートは日付を内部的に数値で管理しています。表示形式を「日付」にすると、見慣れた日付表記になりますよ。

TODAY関数で日数計算する方法

TODAY関数の真価は、日数計算と組み合わせたときに発揮されます。日付はシリアル値(数値)なので、足し算・引き算がそのままできます。

今日から〇日後・〇日前を求める

〇日後を求めるには、TODAY()に日数を足します。

=TODAY()+7

この数式で、今日から7日後の日付が表示されます。

〇日前を求めるには、日数を引くだけです。

=TODAY()-30

これで30日前の日付がわかります。直近1ヶ月のデータを抽出するときなどに便利ですよ。

期限まであと何日かを表示する(残り日数カウント)

期限日からTODAY()を引けば、残り日数がわかります。

A1セルに期限日が入っている場合の数式はこちらです。

=A1-TODAY()

結果がマイナスなら期限超過、0なら当日、プラスなら期限前です。

結果が日付形式で表示されてしまう場合は、表示形式を「数値」に変更してください。

TODAY関数とNOW関数の違い

TODAY関数と似た関数にNOW関数があります。この2つの違いを整理しておきましょう。

日付だけ vs 日付+時刻

比較項目TODAY()NOW()
返す値日付のみ(例: 2026/03/19)日付+時刻(例: 2026/03/19 14:30)
内部表現整数のシリアル値小数を含むシリアル値
主な用途期限管理・日数計算タイムスタンプ・経過時間

TODAY()は日付だけを返します。一方、NOW()は現在時刻も含めて返します。小数部分が時刻を表していますよ。

どちらを使うべきか判断基準

迷ったときは、次の基準で選んでみてください。

  • TODAY関数が向いている場面: 期限管理、残り日数の計算、日付の比較
  • NOW関数が向いている場面: 作業ログのタイムスタンプ、経過時間の計算

日数計算にNOW関数を使うと、時刻の端数が影響します。日単位の計算にはTODAY関数を使いましょう。

月初・月末を自動取得する応用テクニック

TODAY関数を他の関数と組み合わせると、月初や月末の日付も自動取得できます。月次レポートの期間指定などに活用できますよ。

月初(1日)を取得するDATE関数との組み合わせ

当月1日を取得するには、DATE関数の使い方と組み合わせます。

=DATE(YEAR(TODAY()),MONTH(TODAY()),1)

ちょっとむずかしく見えますが、やっていることはシンプルです。

  • YEAR(TODAY()): 今年の「年」を取り出す
  • MONTH(TODAY()): 今月の「月」を取り出す
  • 最後の1: 「1日」を指定

この3つをDATE関数でつなげて、当月1日の日付を作っています。

翌月1日を取得したい場合は、MONTHに1を足すだけです。

=DATE(YEAR(TODAY()),MONTH(TODAY())+1,1)

12月でも自動で翌年1月になるので安心してください。

EOMONTH関数と組み合わせて月末日を求める

月末日の取得にはEOMONTH関数が便利です。

=EOMONTH(TODAY(),0)

第2引数の0は「当月」を意味します。1にすると翌月末、-1にすると先月末が返ります。

月末日は月によって28〜31日と変わりますよね。EOMONTH関数なら、うるう年の2月29日も自動で判定してくれます。

条件付き書式と組み合わせて期限切れを自動ハイライト

TODAY関数の実務的な活用として特におすすめなのが、条件付き書式との組み合わせです。期限切れのセルを自動で赤くできます。

設定手順ステップ解説(今日以前の日付を赤くする)

期限日が入ったA列を自動ハイライトする手順を解説します。

ステップ1: 対象範囲(例: A2:A100)を選択する

ステップ2: メニューから「表示形式」→「条件付き書式」を選ぶ

ステップ3: 「書式ルール」のプルダウンで「カスタム数式」を選ぶ

ステップ4: 数式欄に以下を入力する

=$A2<TODAY()

ステップ5: 書式スタイルで背景色を赤系に設定して「完了」を押す

これで期限切れの行が自動で赤くなります。ファイルを開くたびにTODAY()が更新されるので、常に最新の状態が反映されますよ。

応用として、期限が近い行を黄色にすることもできます。「3日以内に期限が来る」場合の数式はこちらです。

=AND($A2>=TODAY(),$A2<=TODAY()+3)

赤(期限切れ)と黄色(期限間近)を組み合わせると、タスク管理がぐっと見やすくなります。

TODAY関数が毎回再計算される理由|揮発性関数とは

TODAY関数には1つ注意点があります。ファイルを開くたびに値が変わるという点です。

ファイルを開くたびに更新される仕組み

TODAY関数は揮発性関数と呼ばれる種類の関数です。

通常の関数は、参照先のセルが変わったときだけ再計算されます。しかし揮発性関数は、スプレッドシートを開いたときや編集したときに毎回再計算されます。

再計算のタイミングは設定で変更できます。「ファイル」→「設定」→「計算」タブを開くと、次の3つから選べます。

  • 変更時(デフォルト)
  • 変更時と毎分
  • 変更時と毎時

TODAY関数を大量に使うと再計算の負荷が増えます。対策として、TODAY()は1つのセルにだけ入力するのがおすすめです。他のセルからは絶対参照(例: =$B$1)で参照しましょう。

再計算させたくない場合の対処法

「今日の日付を固定値として残したい」という場面もありますよね。

その場合は、TODAY関数ではなくキーボードショートカットを使いましょう。

セルを選んだ状態で、以下のショートカットを押してください。

  • Windows: Ctrl + ;(セミコロン)
  • Mac: Cmd + ;(セミコロン)

このショートカットで入力された日付は固定値です。再計算で変わることはありません。

作業記録やログなど「入力した時点の日付を残したい」場面ではこちらが適しています。

よくあるエラーと対処法

TODAY関数はシンプルですが、つまずきやすいポイントもあります。

数値(シリアル値)が表示される

表示形式が「数値」になっています。セルを選択して「表示形式」→「数字」→「日付」に変更してください。

日数計算の結果が日付で表示される

=A1-TODAY() の結果を数値で見たいのに、日付形式で表示されるケースです。結果セルの表示形式を「数値」に変更しましょう。

日付の表示形式を変えたい

「2026年3月19日」や「3/19」など、好みの形式にしたい場合があります。TEXT関数の使い方を使えば、表示形式を自由に指定できますよ。

=TEXT(TODAY(),"YYYY年MM月DD日")

#ERROR! が出る

カッコの中に引数を入れていないか確認してください。TODAY関数は =TODAY() のように、カッコ内を空にします。

まとめ

TODAY関数は、今日の日付を自動表示するシンプルな関数です。

この記事で紹介した活用パターンをおさらいします。

  • 基本: =TODAY() で今日の日付を表示
  • 日数計算: =TODAY()+7 で〇日後、=A1-TODAY() で残り日数
  • 月初・月末: DATE関数やEOMONTH関数と組み合わせ
  • 条件付き書式: =$A2 で期限切れを自動ハイライト
  • 固定日付が必要なら: Ctrl + ; ショートカットを使う

揮発性関数なので、大量に使う場合は1セルにまとめて絶対参照で使うのがコツです。

まずは =TODAY() をセルに入力するところから試してみてください。

タイトルとURLをコピーしました