スプレッドシートの日付自動入力、実は「ずれる」「変わる」の落とし穴に注意!

「今日の日付を自動で入れたいだけなのに、なぜか昨日の日付になってる…」 「請求書の発行日、あとで開いたら変わっちゃってた…」

そんな経験はありませんか?今回は、スプレッドシートで日付を自動入力する基本の方法と、多くの人がつまずく「日付がずれる・変わってしまう」トラブルの原因と対処法を、まとめて紹介していきます。

リュージと、茶色いポメラニアン・チョコの会話を通して、初心者でもすぐに実践できるようにお伝えしていきます!

今日の日付を自動で入れる、一番簡単な方法

リュージ、日報を書くたびに、今日の日付を手で入力するのが面倒なんだよね

それなら、TODAY関数を使えば自動化できるよ

TODAY関数?

うん。セルに「=TODAY()」って入力するだけで、今日の日付が自動的に表示されるんだ

それだけでいいの!?毎日書き換えなくていいの?

うん、シートを開くたびに、自動で「今日」の日付に更新されるんだ。日報や出勤簿みたいに、常に今日の日付が必要な書類にぴったりだよ

 今日の日付を自動入力する最も基本的な方法は、TODAY関数を使うことである。セルに「=TODAY()」と入力するだけで、その日の日付が自動的に表示される。この関数はシートを開いたときや再計算のタイミングで値が更新されるため、日報や出勤簿など、常に「今日」の日付が必要な書類で活用できる。 

要注意!TODAY関数の「落とし穴」

これは便利!さっそく請求書の発行日にも使ってみようかな

あ、それはちょっと待って!実は、そこがTODAY関数の一番の落とし穴なんだ

え、どういうこと?

TODAY関数は「常に今日の日付」を表示する関数だから、今日発行日として入力しても、来週シートを開いたときには「来週の日付」に変わってしまうんだ

それは大変…!請求書の発行日が変わっちゃったら、大問題だ

そうなんだ。だから「記録として残したい日付」には向いていなくて、「常に最新の今日を表示したい」場合にだけ使うのがポイントだね

発行日はどうやって入力すればいいの?

TODAY関数で一度入力したあと、そのセルをコピーして、「編集」→「特殊貼り付け」→「値のみ貼り付け」を選ぶんだ。そうすれば、その時点の日付が「値」として固定されるよ

 TODAY関数は常に「その日」の日付を表示するため、請求書の発行日のように、後から見返したときに変わってほしくない「記録」として日付を残したい場合には適していない。過去の記録として日付を固定したい場合は、TODAY関数で一度日付を入力した後、そのセルをコピーし、「編集」→「特殊貼り付け」→「値のみ貼り付け」を選択することで、関数ではなく固定された値として日付を残すことができる。 

実は関数を使わなくても、日付だけ固定して入力できる

コピーして貼り付け直すの、ちょっと手間だね。もっと簡単な方法はないの?

あるよ。ショートカットキーを使えば、最初から「固定された」今日の日付を直接入力できるんだ

どうやるの?

Windowsなら「Ctrl+;(セミコロン)」、Macなら「Cmd+;」を押すだけだよ

これなら関数を使うより早そう!さっきのTODAY関数と何が違うの?

一番大きな違いは、このショートカットで入力した日付は、最初から固定値だということ。あとで日付が変わってしまう心配がないんだ

じゃあ、発行日みたいな「記録」を入力するときは、こっちを使えばいいんだね!

その通り。ちなみに時刻も入力したい場合は、「Ctrl+Shift+;」を使えば、現在の時刻も入力できるよ

 関数を使わずに、今日の日付を直接固定値として入力したい場合は、キーボードショートカットが便利である。Windowsでは「Ctrl+;(セミコロン)」、Macでは「Cmd+;」を押すことで、現在の日付が入力される。TODAY関数と異なり、この方法で入力された日付は最初から固定値であるため、後から日付が変わってしまう心配がない。時刻も併せて記録したい場合は、「Ctrl+Shift+;」(Macは「Cmd+Shift+;」)で現在時刻を入力できる。 

「日付がずれる」トラブルの正体は、タイムゾーン設定

リュージ、実は前にTODAY関数を使ったとき、なぜか1日前の日付が表示されたことがあったんだよね…

それ、実はよくある落とし穴なんだ。原因の多くは「タイムゾーン」の設定なんだよ

タイムゾーン?そんな設定、意識したことなかった…

うん、意外と見落とされがちなんだ。スプレッドシートを新しく作ったとき、設定によっては日本時間以外のタイムゾーンになっていることがあるんだよ

どうやって直すの?

「ファイル」→「設定」を開いて、「全般」タブにあるタイムゾーンの項目を確認するよ。「(GMT+09:00)東京」になっているか、必ずチェックしてみて

もし東京になっていなかったら?

プルダウンから「(GMT+09:00)東京」を選び直して、保存すればOKだよ。あわせて「言語と地域」も「日本」になっているか確認しておくと、より確実だね

 TODAY関数で表示される日付が実際の日付と異なる「ずれ」が発生する場合、原因の多くはスプレッドシートのタイムゾーン設定にある。「ファイル」→「設定」を開き、「全般」タブのタイムゾーンが「(GMT+09:00)東京」になっているかを確認する。異なる設定になっている場合は、プルダウンから正しいタイムゾーンを選び直して保存する。あわせて「言語と地域」の項目が「日本」になっているかも確認しておくと、表示形式のずれも防ぎやすくなる。 

それでも直らないときは、この2つを試す

タイムゾーンを直しても、まだずれてたらどうしよう…

その場合は、まずシートを再読み込みしてみて。スプレッドシートを開きっぱなしにしていると、日付がまだ新しく読み込まれていないことがあるんだ

どうやって再読み込みするの?

キーボードの「F5」キーを押すか、ブラウザの更新マークをクリックすればいいよ

それでも直らなかったら?

ブラウザのキャッシュをクリアしてみるといいよ。ブラウザの設定メニューから「キャッシュの消去」を選んで、そのあとスプレッドシートを開き直せば、最新の情報が反映されるはずだよ

 タイムゾーンの設定を確認・修正しても日付のずれが解消しない場合、2つの対処法を試すとよい。1つ目は、スプレッドシートを再読み込みすることである。シートを開きっぱなしにしていると、最新の日付情報が読み込まれていない場合があるため、「F5」キーを押すかブラウザの更新ボタンをクリックする。2つ目は、ブラウザのキャッシュをクリアすることである。ブラウザの設定メニューから「キャッシュの消去」を選択し、スプレッドシートを開き直すことで、最新の状態が反映されやすくなる。 

連続した日付を、一気に入力する方法

今日の日付以外にも、便利な入力方法ってあるの?月間のスケジュール表を作りたいんだけど、1日ずつ手入力するのが大変で

それなら、フィルハンドルを使う方法があるよ。まず開始日を1つ入力して、そのセルの右下にある小さな四角をドラッグするだけで、連続した日付が自動で入力されるんだ

それは簡単そう!もっとたくさんの日付を一気に入れたいときは?

SEQUENCE関数を使う方法もあるよ。「=SEQUENCE(30,1,TODAY(),1)」って入力すれば、今日から30日分の日付が、縦にずらっと並んで表示されるんだ

1つの数式で、30日分も出てくるの!?

うん、月間スケジュール表や、プロジェクトの日程表を作るときに重宝するよ

 連続した日付を効率的に入力したい場合、シンプルな方法としては、開始日を入力したセルの右下にある「フィルハンドル」をドラッグすることで、連続した日付を自動入力できる。より多くの日付を一度に生成したい場合は、SEQUENCE関数が便利である。「=SEQUENCE(30,1,TODAY(),1)」のように入力すると、今日から30日分の日付が縦に並んで表示される。月間スケジュール表やプロジェクトの日程表を作成する際に活用できる。 

日付の「見た目」を変えたいときは

「2026/8/16」みたいな表示を「2026年8月16日」に変えたいんだけど、どうすればいい?

日付のセルを選んで、「表示形式」→「数値」→「日付」から好きな表示形式を選べるよ

「(水)」みたいに、曜日も一緒に表示することってできる?

できるよ。「表示形式」→「数値」→「カスタム数値形式」を選んで、独自の形式を作れるんだ。表示を変えても、セルの中身のデータ自体は変わらないから、計算や並べ替えには影響しないのも安心なポイントだね

 日付の表示形式は、対象セルを選択し「表示形式」→「数値」→「日付」から標準的な形式を選択できる。曜日を含めるなど、より細かい表示にしたい場合は、「表示形式」→「数値」→「カスタム数値形式」から独自の形式を作成できる。なお、表示形式を変更してもセル内のデータ自体は変わらないため、日付を使った計算や並べ替えには影響しない。 

まとめ:日付を自動入力するときのポイント

今日でスプレッドシートの日付入力のこと、だいぶわかった気がする!

最後にまとめると、今日紹介したのはこんな内容だったね

知りたいことポイント
常に今日の日付を表示したいTODAY関数(=TODAY())
発行日など固定して残したいショートカット(Ctrl/Cmd+;)、またはTODAY関数を値のみ貼り付け
日付がずれる原因タイムゾーン設定(ファイル→設定→全般)
それでも直らないシートの再読み込み、ブラウザのキャッシュクリア
連続した日付を入れたいフィルハンドルのドラッグ、またはSEQUENCE関数
表示形式を変えたい「表示形式」→「数値」→「日付」またはカスタム数値形式

まずは、記録用の日付とTODAY関数を使い分けることを覚えておくよ!

それがいいと思うよ。もし日付がずれてしまったときは、慌てずにタイムゾーンの設定から確認してみてね

リュージ、今日も教えてくれてありがとう!

 スプレッドシートでの日付自動入力は、「常に今日の日付を表示したいのか」「その時点の日付を記録として固定したいのか」を最初に見極めることが重要である。前者にはTODAY関数、後者にはショートカットキーや値のみ貼り付けが適している。また、日付がずれるトラブルの多くはタイムゾーン設定に起因するため、原因が分からず困ったときは、まずファイルの設定画面を確認する習慣をつけておくとよい。 

関連記事

  1. スプレッドシートのショートカット、覚えて本当に速くなる?挫折しない覚え方も解説

  2. スプレッドシートでグラフを作る方法!どの種類を選べばいいかも解説

  3. Googleスプレッドシートの SUMIF・COUNTIF関数の使い方(条件範囲の指定ミスも解説)

  4. Googleスプレッドシートの ARRAYFORMULA関数の使い方

  5. Googleカレンダーを共有するやり方!家族・チームでの使い分けも解説

  6. スプレッドシート特有のエラー表示(#N/A、#ERROR!)の解説

  7. スプレッドシートで「あの人が何を編集したか」を確認する方法

  8. Googleスプレッドシートの QUERY関数の使い方(SQL風の書き方でよくあるエラーも解説)

  9. スプレッドシートのIMPORTRANGE関数の使い方