【Excel】今日本日の日付を自動入力して表示する(TODAY関数)
約~分
(約文字)
2016-03-03 2026-04-15
【Excel】今日本日の日付を自動入力して表示する(TODAY関数)
- 「エクセルで日付の自動入力の仕方が解らない」
- 「本日の年月日をセルに表示する方法は?」
- 「今日の日付を西暦で文書に入れるのはどうするの?」
- 「EXCELに当日の日付を和暦で自動入力する関数ってある?」
まず結論
エクセルで今日の日付を自動表示するには、TODAY関数を使えばファイルを開くたびに当日の日付に更新されます。和暦・西暦・曜日付きの表示にも対応できます。
- このページで分かること
- TODAY関数で今日の日付を自動表示する方法
- 和暦・西暦・曜日付きに表示を変える方法
- TODAY関数の値を固定する方法と年齢計算への応用
これらを解決するのがTODAY関数です。
この記事を読めば、エクセルで今日の日付を自動で表示するTODAY関数の、疑問や問題を解決できます。
更に、表示された日付を西暦や和暦で表示する方法や、日付と一緒に曜日も表示する方法や、表示された日付を固定する方法も解説します。
説明に使ったエクセルファイルです。ダウンロードして自身の端末で確認してみてください。
この記事の目次
1.【知識】エクセルで今日(本日)の日付を自動で表示する
エクセルで作った資料に、今日本日の日付を自動で入力して表示させたい場面がよくあります。
この様な場合、エクセルには便利なTODAY関数が用意されています。
1-1.日付の自動表示ならTODAY関数が便利
例えば、エクセルで様式(フォーマット)を作成してみんなで使いまわす場合、書類の作成日や有効期限の日付を、手動で更新するのはとても面倒です。
そんな面倒な作業を解決するのが「TODAY関数」です。
このような見積書は、作成日を基準にして「見積日」や「有効期限」を自動更新したい様式の代表です。
1-2.TODAY関数の読み方
TODAY関数の読み方は「トゥデイ カンスウ」でます。
英単語の「TODAY」は「今日」「本日」「今時」という意味です。
2.【基礎】TODAY関数の基本的な使い方(今日の日付を自動表示する)
TODAY関数の基本的な使い方は、日付を表示したいセルにTODAY関数の基本構文を入力すれば、指定したセルに本日の日付が表示されます。
たとえば、セルA1に「=TODAY()」と入力して【Enter】キーを押すと、パソコンの日付が2026年11月2日であれば「2026/11/2」のように表示されます。ファイルを開き直したときや再計算されたときに、日付は自動的にその日のものへ更新されます。
対応バージョン
- 365
- 2019
- 2016
- 2013
- 2010
- 2007
基本構文
TODAY関数の基本構文は、以下の様に指定します。
=TODAY()
TODAY関数は、関数名のあとの「()」(かっこ)が必要です。中身が空でも「()」は省略できないため、「=TODAY」とだけ入力しないよう注意してください。
引数
TODAY関数は引数の指定が不要です。かっこの中には何も入力せず、「()」のまま使います。
入力方法(ショートカット)
【Ctrl】+【;】
※画像引用元:www.sharots.com
なお、ショートカットキーの【Ctrl】+【;】で入力した日付は、関数ではなく入力した日の日付がそのまま固定されます。翌日以降も自動で更新されないので、毎日最新の日付を表示したいときは「=TODAY()」を入力してください。
日付の加減算(応用例)
Excelでは日付を「1日=1」という数値で扱うため、TODAY関数に数字を足したり引いたりすると、日数の計算ができます。
- =TODAY()+7:今日から7日後の日付(1週間後の期限など)
- =TODAY()-7:今日から7日前の日付
- =TODAY()+30:今日から30日後の日付(支払期限など)
また、期限日が入力されたセルB1があるとき、「=B1-TODAY()」とすると期限までの残り日数を求められます。結果が日付のように表示される場合は、セルの表示形式を「標準」または「数値」に変更してください。
「#NAME?」エラーが表示されるときの原因
TODAY関数を入力して「#NAME?」と表示されるときは、関数名が正しく認識されていません。主な原因は次の2つです。
- 全角で入力している:「=TODAY()」のように全角文字で入力すると、関数として認識されません。「=」「TODAY」「()」はすべて半角で入力してください。
- スペルミスがある:「TODEY」「TODYA」などの打ち間違いがあるとエラーになります。「TODAY」と正しく入力されているか確認しましょう。
入力し直しても直らない場合は、セルの先頭に余分なスペースや記号が入っていないかも確認してください。
3.【基礎】エクセルのTODAY関数で日付が自動表示される仕組みを理解する
エクセルのTODAY関数で、今日本日の日付が自動で表示される仕組みのポイントは3つあります。
- 【ポイント①】更新の条件とタイミングでTODAY関数が自動計算される
- 【ポイント②】TODAY関数から日付として”シリアル値”が返る
- 【ポイント③】シリアル値がセルの書式設定に合わせた形式で日付が表示される
これを理解すると、エクセルで「日付がどう取り扱われているか」「日付をどう表示しているのか」が解るようになり、トラブル時にも簡単に対応できます
【ポイント①】更新の条件とタイミングでTODAY関数が自動計算される
TODAY関数で表示された日付は、基本的に自動で計算され常に最新の日付に更新されます。
ただし以下の2つの点に注意が必要です。
- 1.日付が更新される3つのタイミング
- 2.正確な日付に自動更新される2つの条件
なお、TODAY関数の日付は「時計のようにリアルタイムで刻々と変わる」わけではありません。ファイルを開いた時や再計算が行われた時にだけ更新されます。そのため、ファイルを開いたまま日付をまたいで作業していると、画面上の日付は前日のままになることがあります。この場合は【F9】キーを押して再計算すると、最新の日付に切り替わります。
1.日付が更新される3つのタイミング
TODAY関数で表示された日付は以下の3つのうち、どれかひとつのタイミングで今日本日の日付に更新されます。
- 【タイミング1】ファイル(ブック)を開いた時
- 【タイミング2】ファイルを開いた状態で【F9】キーを押した時(再計算)
- 【タイミング3】シートを印刷した時
【タイミング1】ファイル(ブック)を開いた時
エクセルのファイルを開く時にTODAY関数が再計算されて日付の表示が更新される
これはエクセルのオプションでブックの計算方法として自動計算の設定が「有効」の場合です。
この場合は、該当するブックを開いたタイミングで、TODAY関数が再計算されて今日の日付に更新されます。
【タイミング2】ファイルを開いた状態で【F9】キーを押した時(再計算)
これはエクセルのオプションでブックの計算方法として自動計算の設定が「無効」の場合です。
この場合は、該当するブックを開いている状態で、キーボードの【F9】キーを押したタイミングで、TODAY関数が再計算されて今日の日付に更新されます。
ファイルを開いた状態でキーボードの【F9】キーを押した時にTODAY関数が再計算されて日付の表示が更新される
【タイミング3】シートを印刷した時
これはエクセルのオプションでブックの計算方法として自動計算の設定が「無効」の場合です。
この場合は、シートを印刷するタイミングで、TODAY関数が再計算されて今日の日付に更新されます。
シートを印刷する時にTODAY関数が再計算されて日付の表示が更新される
2.正確な日付に自動更新される2つの条件
TODAY関数の結果が自動更新されるのは、以下の2つの条件を両方とも満たす必要があります。
- 【条件1】エクセルの自動計算の設定が有効になっている
- 【条件2】パソコン(OS)の時間が正確に合っている
【条件1】エクセルの自動計算の設定が有効になっている
エクセルで自動計算を有効にするには、オプション設定で自動計算が「有効」になっている必要があります(デフォルト設定は「有効」)。
[①ファイル]>[②オプション]>
[③数式]>[ブックの計算]>[④自動]を選択>[⑤OK]
日付が更新されない時は「計算方法の設定」を確認する
ファイルを開いても日付が昨日のままだったり、【F9】キーを押さないと変わらなかったりする場合は、計算方法が「手動」になっている可能性があります。次の手順で確認しましょう。
[①数式]タブ>[②計算方法の設定]>[③自動]にチェックが付いているか確認
「手動」にチェックが付いていた場合は、[自動]をクリックして切り替えます。切り替えた直後に、TODAY関数のセルが今日の日付に更新されます。もし更新されなければ、【F9】キーを一度押してください。
確認のポイントは次の3つです。
- [数式]タブの右端にある[計算方法の設定]から、[自動][手動]のどちらが選ばれているかを見る
- 「手動」の場合は[自動]を選び直す(画面右の[再計算実行]ボタンや【F9】キーでも、その場で再計算できる)
- 別のブックを先に開いている状態でファイルを開くと、先に開いたブックの設定が引き継がれ、「手動」になることがある
特に3つ目は気づきにくい原因です。自分のファイルは「自動」にしているのに日付が更新されない場合は、他に開いているブックを全て閉じてから、もう一度そのファイルだけを開き直して確認してみてください。
また、「手動」のまま保存したファイルは、次に開いた時も「手動」の状態になりやすいので、設定を直したあとは上書き保存しておくと安心です。
【条件2】パソコン(OS)の時間が正確に合っている
TODAY関数は作業しているパソコンのOS(オペレーティングシステム、例えば、Windows、Mac)の日時を元にして日付を表示します。
一方OSは、インターネットを経由して、時間を管理しているサーバーから日時を取得し、自動で調整します。
最近のパソコンはインターネットに接続されているのが一般的になっていますので、日時は自動調整されているはずです。
念のため、OSが管理している日付と、日付が自動調整される設定になっているかを、以下の方法で確認しましょう。
OSが管理している日付を確認する方法
Windows10の場合、OSが管理している日付を確認する方法は、モニター画面の右下にある時刻表示にマウスポインターをちょっと長めに合わせれば、現在の日付が表示されます。
OSが日付を自動で調整する設定になっているかを確認する方法
Windows10の場合、OSが日付を自動で調整する設定になっているかを確認する方法は、以下の手順で日付と時刻が自動設定されます。
[①スタート]>[②設定]>
[③時刻と言語]>
[④日付と時刻]>[⑤時刻を自動的に設定する]>[⑥オン]
【ポイント②】TODAY関数から日付として”シリアル値”が返る
TODAY関数は、現在の日付を「シリアル値」で返します。
このシリアル値とはエクセル上で「1900年1月1日」からの通算日数という意味です。
例えば、2016年3月3日にTODAY関数から、シリアル値の「42432」が返ってきます。
1900年1月1日~2016年3月3日までの通算日数が「42432」日ということです。
日付が入力されたセルの書式設定の表示形式で”標準”を選ぶと2016/3/3のシリアル値は”42432”なのがわかる
【ポイント③】シリアル値がセルの書式設定に合わせた形式で日付が表示される
様々な形式で表示が可能な”セルの書式設定”
TODAY関数を入力すると、日付がセルのデフォルトの設定「YYYY/MM/DD」の形式で表示されます。
この日付をカスタマイズして表示させるには、[セルの書式設定]が必要です。
セルの書式設定を理解すれば、エクセルで用意している基本書式と、カスタマイズ可能な”ユーザー定義”形式で、日付を表示できます。
例えば、和暦で表示したり、曜日も一緒に表示することが可能です。
セルの書式設定の画面を表示する
セルの書式設定の画面を表示する方法は、【やり方①】ホームメニューから表示する方法、【やり方②】ショートカットキーから表示する方法の2種類あります。
【やり方①】ホームメニューから表示する方法
[①ホーム]>[②書式]>[③セルの書式設定]
【やり方②】ショートカットキーから表示する方法
【Ctrl】+【1】キー
ショートカットキーの方が素早く出来て便利です(私もよく使います)。
これで[セルの書式設定]ダイヤログが表示されました。
4.【応用】TODAY関数で表示された当日の日付を「和暦」や「西暦」で表示する方法
一つ目の応用として、TODAY関数で表示した日付を、和暦(明治/大正/昭和/平成/令和)や西暦に変換して表示することが出来ます。
先ずは、上記方法で[セルの書式設定]ダイヤログを表示してください。
4-1.和暦で表示する
[セルの書式設定]ダイヤログ>[①分類]日付>[②ロケール(国または地域)]日本語>[③カレンダーの種類]和暦>④種類を選択>[⑤OK]
これでTODAY関数で表示した日付を、和暦に変換して表示できました。
4-2.西暦で表示する
[セルの書式設定]ダイヤログ>[①分類]日付>[②ロケール(国または地域)]日本語>[③カレンダーの種類]グレゴリオ暦>④種類を選択>[⑤OK]
これでTODAY関数で表示した日付を、和暦に変換して表示できました。(”H24.3.14”又は”平成24年3月14日”)
5.【応用】TODAY関数で表示した日付に「曜日」も一緒に表示させる方法
二つ目の応用として、TODAY関数で表示した日付と一緒に曜日を表示する方法は、以下を指定します。
5-1.YYYY/MM/DD(1桁の曜日)と表示させる方法
[セルの書式設定]ダイヤログ>[①分類]ユーザー定義>[②種類]yyyy/mm/dd(aaa)」>[③OK]
これでTODAY関数で表示した日付と一緒に曜日を表示できます。(”2019/07/19(金)”)
5-2.YYYY/MM/DD(3桁の曜日)と表示させる方法
[セルの書式設定]ダイヤログ>[分類]ユーザー定義>[種類]yyyy/mm/dd(aaaa)」>[OK]
これでTODAY関数で表示した日付と一緒に曜日を表示できます。(”2019/07/19(金曜日)”)
曜日だけを表示させることもできる
日付は表示しないで曜日だけを表示させることも可能です。
[セルの書式設定]ダイヤログ>[分類]ユーザー定義>[種類]aaa>[OK]
これで”(金)”と表示されます
TEXT関数とTODAY関数と組み合わせて曜日を表示させる方法
セルの書式設定は使わずに、TEXT関数とTODAY関数を組み合わせることで曜日を表示することも可能です。
=TEXT(TODAY(),"aaa")
これで(2019/07/19(金))
6.【参考】TODAY関数の答え(表示された)を固定する
TODAY関数で表示した日付を「固定したい」とのご要望がよくありますので、私の考えを述べます。
6-1.日付の固定は不可能ではないが非実用的
TODAY関数で表示した日付の固定は、エクセルのオプションでブックの計算を”手動”にすれば可能です。
しかし、同じブックに含まれる他の関数も”手動”の対象となり、計算結果が自動で更新されなくなるので実用的ではありません。
特にエクセルを仕事で使っている場合は、計算ミスが致命的になる場合がありますので、計算の手動設定は止めておきましょう。
6-2.VBAなら日付の固定は可能だが実現は難しい
エクセルに付属するプログラムである”VBA”を使えば、TODAY関数で表示した日付を固定することが可能です。
しかし、この方法は初心者には敷居が高いので、おすすめしません。
又、VBAのプログラムを動作さえる必要が発生するはずなので、完全に自動化はすることは難しいです。
6-3.結論は手入力するのが現実的
結論は、日付を「手入力」するのが早いです。
但し、手入力は間違えるリスクがあると考えるなら、以下の方法もおすすめします。
- 【手順①】セルにTODAY関数を入力する
- 【手順②】セルの内容をコピーする
- 【手順③】セルを右クリックする
- 【手順④】形式を選択して貼り付けから「値」をクリックする
この手順で貼り付けた日付は関数ではなく「ただの数値(日付)」になるため、翌日以降にブックを開いても変わりません。
なお、コピーして貼り付ける代わりに、手順①でTODAY関数を入力したあとに「F9キー」を押す方法もあります。数式バーで関数を編集中にF9キーを押すと、その時点の結果が値に置き換わります。ただし、押したあとは元の関数に戻せないので注意してください。
6-4.Ctrl+;(セミコロン)なら一瞬で今日の日付を固定入力できる
もっと簡単な方法が、ショートカットキーの「Ctrl+;(コントロールキーとセミコロンキー)」です。
日付を入力したいセルを選択して、このキーを押すだけで、今日の日付がそのセルに入力されます。関数ではなく「静的な日付」として入力されるため、明日以降にファイルを開いても日付は変わりません。
- 【手順①】日付を入力したいセルをクリックして選択する
- 【手順②】キーボードの「Ctrl」キーを押したまま「;(セミコロン)」キーを押す
- 【手順③】今日の日付(例:2026/11/2)が入力される
日本語入力がオンのままだとうまく入力されないことがあります。その場合は、半角英数の状態に切り替えてからもう一度試してください。
ちなみに、現在の「時刻」を固定して入力したい場合は「Ctrl+Shift+;(コントロール・シフト・セミコロン)」を使います。日付と時刻の両方を入れたいときは、日付を入力したあとにスペースキーを1回押し、続けて時刻を入力すると便利です。
6-5.TODAY関数と固定入力の使い分けの目安
「日付が自動で変わってほしいのか」「その日の日付のまま残してほしいのか」で選ぶと迷いません。
| こんなときに使いたい | おすすめの方法 | 理由 |
|---|---|---|
| 請求書や見積書の「作成日」「発行日」 | Ctrl+;(静的な日付) | 後から開いても発行日が変わってはいけないため |
| 日報や作業記録の「記入日」 | Ctrl+;(静的な日付) | 記録した日を正しく残す必要があるため |
| 期限までの「残り日数」の計算 | TODAY関数 | 開くたびに今日の日付で再計算されるため |
| 年齢や勤続年数の自動計算 | TODAY関数 | 時間が経つと自動で値が更新されるため |
| 常に最新の日付を表示したい資料の見出し | TODAY関数 | 手作業で日付を直す手間がなくなるため |
簡単にまとめると、「記録として残す日付」は Ctrl+; や値の貼り付けで固定し、「今日を基準に計算したい日付」は TODAY関数 を使う、と覚えておけば大丈夫です。
ひとつのブックで両方が必要な場合は、固定した日付のセルと、TODAY関数のセルを分けておくと、後から見たときにも分かりやすくなります。たとえば「発行日(固定)」と「本日(TODAY関数)」を並べて、その差を計算すれば経過日数も求められます。
7.TODAY関数とNOW関数の違い(日付だけか、時刻も必要か)
TODAY関数は「今日の日付」だけを返し、NOW関数は「今日の日付と現在の時刻」を返します。どちらも引数は不要で、=TODAY() や =NOW() のようにカッコだけを入力します。
書類の作成日や有効期限の判定など日付だけで足りる場合はTODAY関数、タイムスタンプのように時刻まで必要な場合はNOW関数を選びます。NOW関数の結果を日付だけで表示したい場合は、セルの書式設定で表示形式を日付にすれば同様に見せられます。
なお、TODAY関数の戻り値は時刻が0:00のシリアル値です。そのため、NOW関数の結果と比較する式では時刻の分だけ差が出る点に注意してください。
8.【応用】TODAY関数で期限までの残り日数を計算し、期限切れを色で知らせる
契約更新日や提出期限が入力されたセルがB2にある場合、=B2-TODAY() と入力すると期限までの残り日数が求められます。結果が日付表示になるときは、セルの表示形式を「標準」または「数値」に変更してください。
期限切れかどうかを文字で表示したい場合は、=IF(B2<TODAY(),"期限切れ","") のようにIF関数と組み合わせます。
さらに、条件付き書式の数式に =$B2<TODAY() を指定すると、期限を過ぎた行だけを自動で赤く塗りつぶせます。7日前から黄色にしたい場合は =AND($B2>=TODAY(),$B2-TODAY()<=7) を使います。
まとめ
このページでは、エクセルの「今日の日付を自動で表示するTODAY関数」について、以下を解説してきました。
- ・エクセルで今日本日の日付を自動で表示するにはTODAY関数を使うのが便利
- ・TODAY関数の 基本構文は”=TODAY()”、引数なし、ショートカットは【Ctrl】+【;】キー
- ・エクセルのTODAY関数で本日の日付が自動表示される仕組み
- 【ポイント①】パソコンの時間が正確でエクセルの自動計算が有効になっている必要がある
- 【ポイント②】TODAY関数から日付として”シリアル値”が返る
- 【ポイント③】シリアル値がセルの書式設定に合わせた形式に変換され日付が表示される
- ・TODAY関数で表示された日付を「和暦」や「西暦」で表示することが出来る
- ・TODAY関数で表示した日付に「曜日」も一緒に表示させることが出来る
- ・TODAY関数の答え(表示された)を固定するなら手入力が確実
ご理解いただけましたでしょうか?
次は、あなたが実際にエクセル上で実際に作業してみて下さい。 自分の手を動かすことが、パソコンスキル向上の近道です。
この記事は以上です。