Excelで日付を入力したとき、急に「45972」のような謎の数字になって驚いたことはありませんか? たまに、大きな数字に変わってしまってパニックになる生徒さんがいました。日付を入れたはずなのに「壊れた!」と焦る必要はありません。
実はそれが、Excelが裏側で持っている本来の日付の姿(シリアル値)なのです。
Excelが『正体(シリアル値)』を表示しちゃっただけなので、表示形式を『日付』に戻してあげればいいだけなんです!
👉表示形式の詳しい変え方は、[こちらの記事]で図解いで解説しているので、不安な方は確認してみてくださいね。
今回は、日付と時間の計算をマスターするために欠かせない「シリアル値」について解説します。
シリアル値とは?(日付の正体)
Excelにとって、日付は「文字」ではなく「数字(連番)」です。 この数字のことを「シリアル値」と呼びます。
Excelは以下のルールで日付を管理しています。
「2025/11/11」が45972になる理由は?
Excelは 1900年1月1日を1 として、そこから1日ずつ数える仕様になっています。
こうすることで、日付の差を計算したり、条件で並べ替えたりすることが簡単になるんです。
謎の数字が出て「数字が出て怖い」と感じるかもしれませんが、逆に理解すると 日付の計算が自由自在 になります。
シリアル値の仕組みを実際に見てみよう
日付が入っているセルの「表示形式」を「標準」に変えると、この数字(シリアル値)が見えます。

- または右クリック→ 「セルの書式設定」 → 「数値」
:表示形式を切り替えるだけで、元の日付にも戻せます。

- 1900/1/1 → シリアル値:1
- 1900/1/2 → シリアル値:2
- 2025/11/11 → シリアル値:45972

つまり、「45972」という数字は、「1900年1月1日から数えて45972日目ですよ」という意味だったのです。
日付の計算ができる理由

でもなぜExcelはこんな面倒なことをしているの?

それは、「計算」をしやすくするためです。日付がただの「数字」であれば、足し算や引き算が簡単ですよね。
日付の差を計算したい場合、
- 明日の日付を知りたい: 今日 + 1
- 先週の日付を知りたい: 今日 - 7

「2025/11/11」という文字のままだと計算できませんが、裏側で「45972」という数字になっているおかげで、Excelは正確に日数を計算できるのです。
「時間」はどうなってる?
ここからが少し面白いところです。 「1日 = 1」だとしたら、「時間」はどう表されるでしょうか?
正解は、「1より小さい数(小数)」です。 1日(24時間)を「1」として、それを分割して考えます。
- 朝 6:00 (1日の4分の1) → 0.25
- 昼 12:00 (1日の半分) → 0.5
- 夕 18:00 (1日の4分の3) → 0.75

計算式: 今の時間 ÷ 24時間
例えば、「日付と時間」が一緒に入っているデータの場合、シリアル値は以下のようになります。
例:2025/11/11 12:00
- 日付部分:45972
- 時間部分:0.5
- シリアル値:45972.5

これにより、経過時間や差分を計算することも可能です。
「整数部分が日付」「小数部分が時間」と覚えておけば完璧です!
実践!時間の計算
時間の計算も、基本的には「引き算」や「足し算」でOKです。 ただし、手入力で計算するときには少しコツがいります。
セルをクリックして計算(おすすめ!)
一番確実なのは、セルに入力して計算する方法です。
- A2セル:6:00 + A2セル:6:00
- 計算式:
=A2+A2 - 答え:12:00

A2セルに 6:00 と入力すると、内部的に 0.25 というシリアル値になります。
つまり セル参照を使えば数字として計算可能 です。
シリアル値で時刻を計算
シリアル値:=0.25+0.25


わざわざシリアル値で計算するよりセル同士で計算する方法でよくない?計算結果は同じでしょ?

その通りです!実務ではセルに入力された時刻同士を計算すれば十分です。ここで「0.25 + 0.25」と数値で計算するのは、仕組みの確認やExcel内部での計算を学ぶためですが、ちょっとだけ利点があります。
固定値の計算が簡単
- ちょっとした計算やサンプルを示す場合に便利

💡 実務ではほぼセル参照を使うのがベストなので、仕組みとして数値でも計算もできるよ!だけでよいです。
関連関数
文字列からシリアル値に変換する(DATEVALUE関数)
- 文字列「2025/11/11」をシリアル値に変換する場合:
=DATEVALUE("2025/11/11")
→ 45972 という数値が返されます
💬 シリアル値に変換するのはなぜ?
Excelは文字列では計算できないので、DATEVALUEで数値化する必要があります。
👉関数って何?という方は、まず[関数の基本]から読むとスムーズですよ
シリアル値を日付形式に戻す(TEXT関数)
- シリアル値 45972 を通常の表示形式に戻す:
=TEXT(45972,"yyyy/mm/dd")
→ 「2025/11/11」と表示される
Tips:表示形式を変えるだけなら、セルの書式設定でも可能です。
👉表示形式を戻してくれるTEXT関数はこちらを確認してみてくださいね
Step4:実務での活用例
- 経過日数の自動計算
= 終了日 − 開始日 - 期限管理
=IF(serial > TODAY(),”期限内”,”過ぎ”) - フィルターや並べ替え
シリアル値で順序付けすれば正確に日付順に並ぶ
ポイント:シリアル値を理解しておくと、計算式や関数を自由に組み合わせられます。
初心者向けの注意点
- 入力形式に注意(yyyy/mm/dd など)
- 表示形式だけを変えても内部値はシリアル値
- 関数で文字列と数値を混在させるとエラーになる場合あり
Tips:文字列→シリアル値→表示形式、という順番を理解するとエラーが減ります。
まとめ
- シリアル値とは、Excelが裏で持っている「日付と時間の数値」。
- 日付は「1900年1月1日」からの日数(整数)。
- 時間は「24時間を1とした割合」(小数)。
この仕組みを知っておけば、日付の表示がおかしくなっても「あ、表示形式を直せばいいんだな」とすぐに分かりますし、時間の計算ミスも防げますよ。
🌱関連する内容をまとめたので、必要に応じてご覧ください。



運営者プロフィール
パソコンインストラクターの経験を生かして、シニアの方や初心者の方に、WordやExcelの「できた!」を届けるために活動しています。