Excelで今日の日付を自動表示したいときは、TODAY関数を使うと入力の手間を省けます。
請求書の作成日、日報の記入日、進捗管理表の基準日など、開くたびに日付を更新したい場面で便利な関数です。
さらに表示形式を変更すれば、年月日だけでなく曜日付きの日付や和暦風の表記にも対応できます。
TODAY関数は、引数を指定せずに今日の日付を返す関数です。
セルには「=TODAY()」と入力し、表示形式を整えるだけで利用できます。
この記事では、エクセルのTODAY関数で今日の日付と曜日を表示する方法、更新の仕組み、実務で使いやすい数式を解説していきます。
エクセルでTODAY関数を入力する方法
それではまず、TODAY関数で今日の日付を表示する基本操作について解説していきます。
| A | B | C |
|---|---|---|
| 1 | 基準日 | |
| 2 | 今日の日付 | =TODAY() |
TODAY関数の基本構文
TODAY関数の構文は非常にシンプルです。
=TODAY()
かっこの中にセル参照、文字列、数値などを入力する必要はありません。
TODAY関数は引数なしで入力することが重要です。
半角のイコール記号から入力し、TODAYの後ろに半角の丸かっこを付けて確定します。
たとえばB2セルに数式を入力すると、保存した日ではなく、そのファイルを計算した時点の日付が表示されます。
日付が「2026/8/26」のように見えるか、「45995」のような数字に見えるかは、セルの表示形式で決まります。
数式を正しく入力しているのに大きな数字だけが表示される場合は、関数の失敗ではなく日付表示形式が設定されていない可能性があります。
セルへ数式を確定する操作
日付を表示したいセルを選択して、数式バーまたはセル内に=TODAY()と入力します。
入力後にEnterキーを押すと、Excelが数式を計算して今日の日付を表示します。
サンプルデータでは1行目を見出しにし、B2セルへ日付の項目名、C2セルへTODAY関数を入力する構成が分かりやすいでしょう。
日付を手入力せず、基準日としてTODAY関数を置くことが自動化の第一歩です。
数式はセルに残るため、翌日以降に同じブックを開いたときも再利用できます。

ただし、Excelの計算方法が手動に設定されているブックでは、日付の更新がすぐ画面に反映されないことがあります。
その場合はF9キーで再計算するか、数式タブの計算方法の設定を確認しましょう。
日付が数値で表示される場合の対処
Excelでは日付を連続した数値として管理しており、通常はその数値に日付の見た目を与えて表示しています。
そのため、TODAY関数の結果が45995のような数値になった場合でも、関数自体は正常に動いていることがあります。
対象セルを選択し、ホームタブの表示形式から「短い日付形式」または「長い日付形式」を選びましょう。
日付が数字で表示されたら、数式を書き直す前にセルの表示形式を確認します。
表示形式を日付に変更すれば、同じ計算結果を年月日の形で読みやすくできます。
ユーザー設定の表示形式を使えば、2026年8月26日という表記にも変更できます。
【操作のポイント】TODAY関数は引数を入れず、日付が数字になる場合は表示形式から調整します。
TODAY関数で今日の日付を見やすく表示する書式
続いては、今日の日付を目的に合わせて表示する書式を確認していきます。
| A | B | C |
|---|---|---|
| 1 | 表示パターン | TODAY関数の結果 |
| 2 | 標準の日付 | =TODAY() |
ホームタブで日付形式を選ぶ手順
もっとも手軽な方法は、TODAY関数を入力したセルを選択してホームタブの表示形式を変更する操作です。
ホームタブにある数値グループでは、短い日付形式や長い日付形式を選択できます。
数式と表示形式は別々に設定できるため、TODAY関数はそのままで見た目だけを変えられます。
短い日付形式は一覧表やスケジュール表に向いており、長い日付形式は提出資料や印刷物で日付を明確に見せたい場合に役立ちます。
表示形式を変更しても、セル内部に保存される日付シリアル値は変わりません。
計算に使う基準日としてTODAY関数を利用している場合でも、表示の変更によって計算結果が壊れる心配はありません。
ユーザー定義で年月日を整える方法
年月日の区切り方まで指定したいときは、セルの書式設定にあるユーザー定義を使います。
yyyy年m月d日
この表示形式を設定すると、TODAY関数の結果を2026年8月26日のように表示できます。
月や日を常に2桁で表示したい場合は、yyyy年mm月dd日を指定します。
請求書番号や帳票のレイアウトに合わせるなら、yyyy/mm/dd、yyyy-mm-dd、m/dといった書式も使い分けられます。
表示形式は用途に合わせて変更し、セルに入力する関数は=TODAY()のままにするのが管理しやすい方法です。
書式コードを設定するときは、セルの書式設定画面でユーザー定義を選び、種類の入力欄へコードを登録します。
文字列として日付を作るTEXT関数
セル内で日付と文字をつなげて表示したい場合は、TEXT関数を組み合わせます。
=”本日の日付は”&TEXT(TODAY(),”yyyy年m月d日”)&”です”
この数式では、TODAY関数の日付を指定した書式の文字列に変換して、前後の文章と連結します。
結果は本日の日付は2026年8月26日ですのように表示されます。
ただしTEXT関数の結果は文字列になるため、そのまま日数計算の基準に使う用途には向きません。
日付計算にはTODAY関数だけのセルを残し、文章表示が必要なセルでTEXT関数を使うとよいでしょう。

【操作のポイント】日付の計算用セルと、見せ方を整えた表示用セルを分けると表を修正しやすくなります。
TODAY関数で曜日を表示する数式
続いては、TODAY関数から今日の曜日を表示する数式を確認していきます。
| A | B | C |
|---|---|---|
| 1 | 日付 | 曜日 |
| 2 | =TODAY() | =TEXT(TODAY(),”aaa”) |
TEXT関数で曜日だけを表示する方法
今日の曜日だけを表示する場合は、TEXT関数の表示形式にaaaまたはaaaaを指定します。
=TEXT(TODAY(),”aaa”)
aaaを指定した場合は月、火、水のような省略した曜日が返されます。
aaaaを指定した場合は月曜日、火曜日、水曜日のように曜日の名称を表示できます。
曜日だけを見せたいセルには、=TEXT(TODAY(),”aaa”)が分かりやすい数式です。
受付表、勤務表、当番表では、日付の横に曜日を表示しておくと、土日や祝日の確認がしやすくなります。
TEXT関数で作った曜日は文字列なので、休日かどうかを条件式で判定したい場合にはWEEKDAY関数を併用します。
日付と曜日を一つのセルに表示する方法
今日の日付と曜日を同じセルに表示したいときは、表示形式を変更する方法が便利です。
yyyy年m月d日(aaa)
TODAY関数を入力したセルにこのユーザー定義書式を設定すると、2026年8月26日(水)のように表示できます。
この方法ではセルの値が日付のまま保持されるので、あとから日数計算や比較計算を行う場合にも扱いやすい点が利点です。
日付と曜日を同じセルに見せるだけなら、TEXT関数より表示形式の変更が実務向きです。
一方で、曜日を含む文章を作る場合や、ほかの文字列と連結する場合にはTEXT関数が適しています。
用途ごとに、日付値を保つ表示形式と文字列を返すTEXT関数を使い分けましょう。

WEEKDAY関数で曜日を数値判定する方法
曜日に応じて処理を分けたいときは、WEEKDAY関数を利用します。
=WEEKDAY(TODAY(),2)
第2引数に2を指定すると、月曜日が1、火曜日が2となり、日曜日は7になります。
この設定は平日を1から5、土日を6と7として扱えるため、勤務日や営業日の計算で分かりやすい形式です。
たとえば、=IF(WEEKDAY(TODAY(),2)>5,”休日”,”平日”)と入力すると、土曜日または日曜日には休日、それ以外には平日と表示できます。
曜日を表示する目的と、曜日で条件分岐する目的は異なるため、TEXT関数とWEEKDAY関数を使い分けます。
【操作のポイント】曜日を見せるならTEXT関数、土日判定などの計算をするならWEEKDAY関数が基本です。
TODAY関数を使った期限と経過日数の管理
続いては、TODAY関数を期限管理や経過日数の計算に使う方法を確認していきます。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 案件名 | 期限日 | 残り日数 | 判定 |
| 2 | 資料提出 | 2026/08/30 | =C2-TODAY() | =IF(C2<TODAY(),”期限切れ”,”確認中”) |
期限までの残り日数を求める数式
期限日がC2セルに入っている場合、残り日数は=C2-TODAY()で求められます。
=C2-TODAY()
サンプルデータの1行目には案件名、期限日、残り日数、判定という見出しを置き、2行目から案件ごとの情報を入力します。
期限日から今日の日付を引くと、期限までの日数が正の数で表示されます。
期限を過ぎた場合はマイナスの値になるため、対応が必要な案件を見つけやすくなります。
TODAY関数を基準にすると、残り日数はブックを開くたびに自動で変化します。
複数の案件へ数式を設定する場合は、D2セルに数式を入力してから、セル右下のフィルハンドルを下方向へドラッグしてオートフィルを実行します。
数式をコピーすると、C2の参照はC3、C4のように自動で変わります。
日付が空欄の行にも数式をコピーすると意図しない結果が出ることがあるため、管理表に必要な行まで適用する方法が安全です。
期限切れと締切間近を表示するIF関数
期限の状態を文字で判定するには、IF関数とTODAY関数を組み合わせます。
=IF(C2<TODAY(),”期限切れ”,IF(C2-TODAY()<=3,”締切間近”,”対応中”))
この数式は、まず期限日が今日より前かを確認し、過去なら期限切れと表示します。
期限切れでない場合は、残り日数が3日以内かを判定し、該当すれば締切間近と表示します。
TODAY関数をIF関数の条件に入れると、毎日更新される期限アラートを作成できます。
文字列は社内の運用に合わせて、要対応、確認要、進行中などへ変更して構いません。
ただし期限日が文字列として入力されていると比較が正しく行えないため、日付形式の値として入力されているかを確認しましょう。
経過日数と未入力を扱う方法
開始日から今日までの経過日数を出す場合は、=TODAY()-B2のように開始日から今日を引きます。
開始日がB2セルにあり、今日が開始日より後なら、経過した日数が正の数で返されます。
日付が未入力の行で不要な数値を出したくない場合は、IF関数で空欄判定を追加します。
=IF(B2=””,””,TODAY()-B2)
この式ではB2が空欄なら何も表示せず、開始日が入力された場合だけ経過日数を計算します。
未入力の行を含む管理表では、空欄判定を加えると見た目と計算の両方を整えられます。
【操作のポイント】期限日は日付データとして入力し、残り日数の数式はオートフィルで必要な行へコピーします。
TODAY関数が更新されない場合の確認事項
続いては、TODAY関数の日付が更新されないと感じた場合の確認事項を解説していきます。
| A | B | C |
|---|---|---|
| 1 | 確認項目 | 確認内容 |
| 2 | 計算方法 | 自動になっているか |
再計算と計算方法の設定
TODAY関数は揮発性関数と呼ばれ、Excelの再計算が行われるタイミングで結果が更新されます。
通常はブックを開いたときや数式を変更したときに自動で再計算されますが、計算方法が手動なら更新されない場合があります。
数式タブの計算方法の設定で、自動が選ばれているかを確認しましょう。
今日の日付が昨日のままなら、まずF9キーによる再計算を試す方法が有効です。
複数のブックを開いている場合、一つのブックの設定がExcel全体の計算方法へ影響することもあります。
共有用の複雑なファイルでは、計算負荷を下げるために手動計算が選ばれているケースもあります。
PCの日時設定とタイムゾーン
TODAY関数は、Excel独自の時計ではなく、基本的にWindowsのシステム日時を基準にして日付を返します。
PC本体の日付、時刻、タイムゾーンが正しくない場合、TODAY関数の結果も意図した日付と異なる可能性があります。
特に海外出張中、リモートデスクトップ利用時、仮想環境で作業する場合はタイムゾーンの設定を確認すると安心です。
関数の値がずれて見える場合は、Excelより先にWindowsの日時設定を確認します。
日付の切り替わる深夜帯にブックを開きっぱなしにしている場合は、再計算を実行して画面を更新しましょう。
固定日付との使い分け
作成日や契約日など、入力した当時の日付を変えずに残したい項目にはTODAY関数は適しません。
TODAY関数は翌日になると結果が変わるため、履歴として残す日付まで自動更新されてしまいます。
固定日付を入力したい場合は、セルを選択してCtrlキーとセミコロンキーを同時に押す操作が便利です。
このショートカットで入力した日付は値として保存され、翌日以降も変化しません。
変化する基準日にはTODAY関数、記録として残す日付には固定入力を使うことが重要です。
【操作のポイント】日付が更新されないときは計算方法、再計算、Windowsの日時設定を順番に見直します。
TODAY関数とNOW関数の使い分け
続いては、TODAY関数とNOW関数の違い、利用場面の使い分けを確認していきます。
| A | B | C |
|---|---|---|
| 1 | 関数 | 返す値 |
| 2 | =TODAY() | 今日の日付 |
| 3 | =NOW() | 現在の日付と時刻 |
TODAY関数が向く業務
TODAY関数は日付だけを基準にする計算に向いています。
納期までの残日数、今日の曜日、月初からの経過日数、当日の帳票表示などが代表的な用途です。
時刻を含まないため、日付同士を比較する数式を作りやすい点も特徴です。
たとえば、予定日が今日以前かを判定する場合は、=C2<=TODAY()のような条件を使えます。
日単位で管理したい表では、TODAY関数がもっとも扱いやすい基準日になります。
時刻が不要な場面でNOW関数を使うと、表示上は同じ日付に見えても内部に時刻の小数値が含まれるため、比較結果が想定と異なることがあります。
NOW関数が向く業務
NOW関数は現在の日付と時刻を返す関数です。
=NOW()
受付日時、作業開始時刻の目安、更新日時の表示など、時刻まで確認したい用途で使います。
表示形式をyyyy年m月d日 h:mmに変更すると、日付と時刻を読みやすく表示できます。
ただしNOW関数も再計算によって更新されるため、作業を開始した瞬間の時刻を固定保存する目的には向きません。
履歴を残す必要がある場合は、値として日時を入力する運用を検討しましょう。
日付計算で発生しやすい差
TODAY関数の結果には時刻が含まれませんが、NOW関数の結果には時刻が含まれます。
この違いにより、同じ日付のセルでも比較式の結果が変わる場合があります。
たとえば今日の日付だけを基準にして期限切れを判定したいなら、TODAY関数を使う方が意図を明確にできます。
一方で、今日の17時までに対応する必要があるなど、締切の時刻まで管理するならNOW関数が適しています。
日付だけか、時刻まで必要かを先に決めると、TODAY関数とNOW関数を迷わず選べます。
【操作のポイント】日単位の管理にはTODAY関数、日時単位の管理にはNOW関数を選びます。
まとめ エクセルの今日の日付と曜日を表示する方法
エクセルで今日の日付を自動表示する基本の数式は、=TODAY()です。
TODAY関数は引数なしで使え、ブックの再計算時に現在の日付へ更新されます。
曜日を別セルへ表示するなら、=TEXT(TODAY(),”aaa”)を使うと月や火のように表示できます。
日付と曜日を一つのセルへ表示する場合は、TODAY関数を入力してからyyyy年m月d日(aaa)の表示形式を設定すると、日付値を保ったまま見やすく整えられます。
期限までの日数は、期限日のセルからTODAY関数を引く数式で管理できます。
期限切れや締切間近の表示にはIF関数を組み合わせると、日々更新される管理表になります。
日付が更新されない場合は、Excelの計算方法が自動になっているか、F9キーで再計算できるか、Windowsの日時が正しいかを確認しましょう。
TODAY関数は、毎日変わる日付を正確に反映しながら、手入力を減らせる実用的なExcel関数です。