エクセル・VBA

エクセル|日付の引き算をする方法|日数・月数・年数で計算する方法

2025年9月12日

エクセルで日付の引き算をする方法

Excel(エクセル)で日付の計算をしようとしたときに、「思った結果が出ない」「うまく引き算できない」「エラーが表示される」といった経験はありませんか?

例えば、締め切りまでの日数を求めたいのに数式が正しく動かず困ったり、経過年数を出したいのに表示が想定と違ったりすることがあります。

こうしたトラブルが起きると、作業が進まず余計な時間がかかってしまい、仕事の効率が下がってしまいますよね。

実は、エクセルで日付を扱うには、日付が数値として保存されている仕組みや、関数の特性を理解することが大切です。

単純に日付を引き算して日数を求める方法、DATEDIF関数を使って年数や月数を計算する方法、TODAY関数と組み合わせて「今日から」自動的に差を計算する方法など、目的に応じて便利に使い分けることができます。

これらを理解しておけば、業務での進捗管理や日程計算がぐっとスムーズになります。

そこで今回の記事では、エクセルで日付の引き算を行う方法とその活用法、さらに計算がうまくいかない原因と対処法について分かりやすく解説していきます。

ぜひ参考になさってください。

エクセルで引き算をする方法については、下記の記事で解説していますのでご覧ください。

Excel(エクセル)で引き算をする簡単な方法|便利な関数との組み合わせも紹介


Excelの引き算って難しい…

そんなお悩み、当教室のレッスンで一気に解決できます。

✔ 基本操作からしっかり学べる
✔ 「見てマネするだけ」で自然と覚えられる
✔ わからないところはすぐ質問できるから安心

文字を読むのが苦手でも大丈夫。

「実践重視のレッスン」+「元パソコンが苦手だった講師のサポート」で、着実に「感覚としてExcelに慣れていく」ようになります。

詳細は下記をご覧ください。

Excel講座バナー

パソコンが苦手な方向けエクセル講座の詳細はコチラ

エクセルでの日付の引き算の基本

基本的な日付の引き算方法

エクセルで日付の引き算を行うには、まずセルに日付を入力することが基本です。

たとえば、ある業務で「作業開始日」と「作業終了日」を管理したい場合、セル【A1】に開始日、セル【B1】に終了日を入力します。

次に、引き算の数式を使って日数を計算します。

セル【C1】に「=B1-A1」と数式を入力します。

この数式では、セル【B1】の日付からセル【A1】の日付を引いています。

入力すると、自動的に日数が表示されます。

例えば、開始日が5月1日、終了日が5月5日であれば、結果は「4」と表示され、5月1日から5月5日までの日数が簡単に確認できます。


Excel(エクセル)の操作が苦手な方のために、操作する上でのコツをまとめたページを用意しました。

「パソコン教室パレハのLINE友達登録」(無料)で「パソコンに役立つ豪華15大特典」をお送りしております。

Excel(エクセル)の操作はもちろん、パソコンが苦手な方に役立つ特典を15個ご用意しております。

良かったら下記からご登録ください。

ライン登録プレゼント

無料LINE登録はこちら

エクセルで引き算をする際の注意点

日付の引き算を行う際には、いくつか注意しておくポイントがあります。

日付形式を確認する

セルに入力した日付が正しい形式になっているか確認しましょう。

文字列として認識されていると、正確な計算ができません。

日付形式でない場合は、セルを選択して「ホーム」タブの「数値」グループから「短い日付」や「長い日付」を選択しましょう。

負の値に注意する

引き算の結果が負の値になることがあります。

たとえば、開始日が終了日より後の場合です。

結果が負の値になると、見た目が分かりにくくなるので、必要に応じて「ABS関数」を使って絶対値に変換する方法もあります。

セルの書式設定を調整する

引き算の結果は日数で表示されますが、セルの書式が日付形式になっていると、計算結果が正しく表示されない場合があります。

その場合は、セルの書式を「標準」または「数値」に設定し直すと見やすくなります。

シリアル値と日付の関係

エクセルでは、日付を シリアル値 という数字で管理しています。

シリアル値とは、1900年1月1日を「1」とし、それ以降の日付が1ずつ増えていく数値のことです。

つまり、エクセル内部では日付も数値として扱われており、引き算や足し算も数値の計算として処理されます。

このため、日付の引き算は シリアル値の引き算と同じことです。

例えば、セル【A1】に2025/09/01、セル【B1】に2025/09/12と入力した場合、実際には以下のように扱われています。

  • セル【A1】=2025/09/01 → シリアル値 44997
  • セル【B1】=2025/09/12 → シリアル値 45008

この場合、セル【C1】に「=B1-A1」と入力すると、45008−44997=11 となり、日数の計算結果が求められます。

シリアル値の考え方を理解しておくと、日付の引き算の仕組みや、計算結果が思った通りになる理由を簡単に理解できるようになります。


Excelの引き算って難しい…

そんなお悩み、当教室のレッスンで一気に解決できます。

✔ 基本操作からしっかり学べる
✔ 「見てマネするだけ」で自然と覚えられる
✔ わからないところはすぐ質問できるから安心

文字を読むのが苦手でも大丈夫。

「実践重視のレッスン」+「元パソコンが苦手だった講師のサポート」で、着実に「感覚としてExcelに慣れていく」ようになります。

詳細は下記をご覧ください。

Excel講座バナー

パソコンが苦手な方向けエクセル講座の詳細はコチラ

エクセル 日付の引き算 DATEDIF

エクセルでは、単純な引き算(=B1-A1)だけで日数を求めることができますが、月単位や年単位で日付の差を知りたい場合は、DATEDIF関数が便利です。

DATEDIF関数を使うと、開始日と終了日の差を 日数・月数・年数 で簡単に計算できます。

DATEDIF関数の基本構文

DATEDIF関数の構文は次の通りです。

=DATEDIF(開始日, 終了日, 単位)

  • 開始日:差を計算する古い日付を指定
  • 終了日:差を計算する新しい日付を指定
  • 単位:結果の表示方法を指定する文字列
    • "D":日数
    • "M":月数(完了した月数)
    • "Y":年数(完了した年数)
    • "YM":月単位の差(年を無視して計算)
    • "YD":日単位の差(年を無視して計算)
    • "MD":月と年を無視した日単位の差

例えば、日数・月数・年数で差を求めるのに、セル【A1】に開始日、セル【B1】に終了日を入力し、セル【C1】~【E1】にそれぞれ日数・月数・年数を計算する場合の例です。

  • C1: =DATEDIF(A1, B1, "d") → 日数
  • D1: =DATEDIF(A1, B1, "m") → 完了した月数
  • E1: =DATEDIF(A1, B1, "y") → 完了した年数

これで、日数・月数・年数の差をそれぞれ表示できます。

DATEDIF関数を使用する際に、以下のようなエラーが出ることがあります。

  • 開始日が終了日より後の場合
    → #NUM! エラーになります。この場合、開始日と終了日を確認するか、IF関数で条件を設定して絶対値を使う方法もあります。
  • 日付形式が正しくない場合
    → #VALUE! エラーになります。セルの書式を「日付」に設定してから計算してください。

TODAY関数を使った日付の引き算

エクセルでは、今日の日付を自動で取得する TODAY関数を使うと、開始日から今日までの経過日数や経過月数を簡単に計算できます。

TODAY関数は引数を必要とせず、常に現在の日付を返します。

例えば、セル【A1】に開始日が入力されている場合、今日までの日数を求めるには、「=DATEDIF(A1, TODAY(), "d")」のように入力します。

同じように入力して、単位を変更すれば、経過した月数や年数を求めることもできます。

このように設定すると、毎日計算結果が自動で更新され、今日までの経過日数や月数を常に確認できます。


教室に通う時間がなくてちょっとずつ覚えたいという方向けの「パソコン苦手さん向け通信講座」を作りました。

基本から順番に「実践で覚えるのではなく慣れていく」教材を使います。

「文字を読むのが苦手…」という方でも大丈夫。

動画とセットで感覚的に身につけられます。

パソコン苦手な方の為のパソコン通信講座バナー

パソコンが苦手な方向け通信講座の詳細はコチラ

関数を使った引き算 その他の方法

DAYS関数を使った日付の引き算

DAYS関数は、2つの日付の差を日数で計算するシンプルな関数です。

DATEDIF関数と似ていますが、計算結果は常に「終了日 − 開始日」で求められるため、単純に日数を知りたい場合に便利です。

DAYS関数の構文は以下のようになります。

=DAYS(終了日, 開始日)

  • 終了日:差を計算する終了日を指定
  • 開始日:差を計算する開始日を指定

例:日数の計算

セル【A1】に開始日、セル【B1】に終了日を入力し、セル【C1】に「=DAYS(B1, A1)」と入力します。

これで、B1からA1までの日数が計算されます。

NETWORKDAYS関数で営業日を計算

エクセルでは、開始日から終了日までの営業日(平日のみ) を計算したい場合、NETWORKDAYS関数を使うと便利です。

この関数を使うと、土日や指定した祭日を除いた日数を自動で計算できます。

NETWORKDAYS関数の構文は以下のようになります。

=NETWORKDAYS(開始日, 終了日, [祭日])

  • 開始日:計算を始める日付
  • 終了日:計算を終える日付
  • [祭日](省略可能):祭日として扱う日付を指定(例:セル範囲や配列)
    ※[祭日]を指定しなければ、土日だけが休みとして扱われます。

例えば、セル【A1】に開始日、セル【B1】に終了日を入力し営業日数を計算する場合、セル【C1】に「=NETWORKDAYS(A1, B1)」と入力します。

これで、土日を除いた営業日数が表示されます。

祭日を考慮する場合

もし特定の休日を除外したい場合は、[祭日]を指定します。

例えば、9月1日と2日を休日として計算する場合は以下のように入力します。

=NETWORKDAYS(A1, B1, {"2025/09/01","2025/09/02"})

この方法により、土日だけでなく指定した休日も除外して正確な営業日数を計算できます。

エクセル 日付の引き算 できない時

エクセルで日付の引き算をするときに、思った結果が出なかったり、エラーが表示される場合があります。

原因の一例は

  • 日付のデータ形式が正しくない
  • 数式の入力ミスやセル参照の誤り
  • 計算モードの設定が適切でない

などがあります。

また表示されるエラーでは

  • #VALUE!エラー
  • #NUM!エラー
  • #NAME?エラー

があります。

これらの原因や対処方法を知っておくことで引き算の操作がスムーズに行えるようになります。

日付の引き算ができない原因と解決方法については、下記の記事で詳しく解説していますのでご覧下さい。

エクセルで日付の引き算ができない理由と対策|エラーとその対処法

まとめ 日付の引き算を効率的に

いかがでしたか?

エクセルで日付の引き算を行う方法を理解しておくことは、日常業務において非常に役立ちます。

単純に「今日から締め切りまでの日数を知りたい」「入社日からどのくらい経過したのかを確認したい」といった場面は多くありますが、その際にただ引き算をするだけではなく、状況に応じて正しい関数や設定を選ぶことが重要です。

例えば、シンプルに「=終了日-開始日」と入力する方法は最も直感的で分かりやすく、日数の差をすぐに求めたいときに便利です。

一方で、年数や月数といった単位で経過を知りたい場合にはDATEDIF関数が適しており、より詳細な経過期間を柔軟に計算できます。

また、TODAY関数と組み合わせることで「現在時点」を基準にした自動計算も可能となり、毎回数式を更新する手間が省ける点も大きなメリットです。

ただし、日付の引き算にはエラーや思わぬ結果が出るケースもあります。

日付が正しく入力されていなかったり、セルの参照が誤っていたり、計算モードの設定が影響する場合もあるため、原因と解決方法を知っておくことは欠かせません。

特に「#VALUE!」「#NUM!」「#NAME?」といったエラーは代表的であり、正しい形式や入力方法を理解することでスムーズに解決できます。

こうした知識を持っておけば、トラブルの際にも落ち着いて対応でき、作業の効率が大きく向上します。

Excel(エクセル)が苦手であればパソコン教室で学んでみませんか?

Excel(エクセル)はかなり奥が深く、知識を得ただけは操作が身に付きにくいものです。

そんな時には、弊社のようなパソコン教室を利用するのも一つの手です。

「苦手な方専門のパソコン教室パレハ」のレッスンは、動画ではなく、直接講師に質問できる生レッスンです。

生レッスンでありながらリーズナブルに学べるのが人気の秘密です。

また、苦手な方に特化しているのでパソコンが特に苦手だと言う方には最適です。

パソコンが苦手な方でも苦労なく上達できる仕組みがあります。

詳細は下記をご覧ください。

Excel講座バナー

パソコンが苦手な方向けエクセル講座の詳細はコチラ


教室に通う時間がなくてちょっとずつ覚えたいという方向けの「パソコン苦手さん向け通信講座」を作りました。

基本から順番に「実践で覚えるのではなく慣れていく」教材を使います。

「文字を読むのが苦手…」という方でも大丈夫。

動画とセットで感覚的に身につけられます。

パソコン苦手な方の為のパソコン通信講座バナー

パソコンが苦手な方向け通信講座の詳細はコチラ


Excel(エクセル)の操作が苦手な方のために、操作する上でのコツをまとめたページを用意しました。

「パソコン教室パレハのLINE友達登録」(無料)で「パソコンに役立つ豪華15大特典」をお送りしております。

Excel(エクセル)の操作はもちろん、パソコンが苦手な方に役立つ特典を15個ご用意しております。

良かったら下記からご登録ください。

ライン登録プレゼント

無料LINE登録はこちら

こちらもご覧ください

こちらもぜひご覧ください

エクセル操作情報

Excel(エクセル)のフィルターの設定方法|使い方の基本から徹底解説

Excel(エクセル) | セル内改行のやり方を初心者向けに解説 | Windows・Mac

エクセルで効率よく日付を入力する方法|ショートカット・関数

Excel(エクセル)で「0」を表示しないようにする3つの方法を解説

エクセル|日付や年数の足し算の計算方法|基本から関数の活用方法まで

Excel(エクセル)|チェックボックス(レ点)の作成や削除方法解説

Excel(エクセル)|テーブルの解除方法と変換するやり方を徹底解説

エクセル|斜線を引く方法と消す方法|分割したセルに文字を入力する裏技

Excel(エクセル)で足し算する方法|入力基本から関数・エラー対処

Excel(エクセル)で引き算をする簡単な方法|便利な関数との組み合わせも紹介

エクセルで印刷範囲設定 | 改ページプレビューの使い方 | 追加・解除など | Excel

Excel(エクセル)|IFS関数でワイルドカードを使って条件の指定をする方法

エクセル|日付をまたぐ時間の引き算とは?計算方法の基本と応用を解説

Excel(エクセル)でバーコードを作成する方法|初心者でも簡単!

Excel(エクセル)|表の作り方手順を徹底解説|初心者向け

Excel(エクセル)の「#NAME?」の意味と対処法|エラーを出さないポイント

Excel(エクセル)でチェックボックスを活用した色付け・塗りつぶしの方法

Excel(エクセル) | 半角 ⇔ 全角変換する(ASC関数・JIS関数)

Excel(エクセル)で絶対値を表示する方法|ABS関数とその他2つの方法

エクセル|計算式や関数の入力方法|基本から応用まで

Excel(エクセル)の勉強ができる練習サイト|おすすめ5選

Excel(エクセル)で曜日を日付から自動で表示・色を付ける方法|関数・書式

エクセルとワードの違いを徹底解説|どっちが役に立つ?

Excel(エクセル)|掛け算の使い方|入力方法を基本からわかりやすく解説

エクセルで日付の引き算ができない理由と対策|エラーとその対処法

Excel(エクセル)でハイパーリンク (URL)の貼り付けと開かない時の対処法

Excel(エクセル)|改行コードを使いこなす基本知識と操作方法

ワード⇔エクセルでそれぞれの表を貼り付ける方法を解説

PDFをエクセルに!5つの変換する方法|専用ツールなしでも可能

Excel(エクセル)ヘッダー フッター(ページ番号)編集方法

Excel(エクセル)で行や列を非表示・再表示(解除)する方法を徹底解説します

エクセル|勝手に日付になるのを修正する方法

Excel(エクセル)でIF関数とOR関数を組み合わせて使う方法

Excel(エクセル)|VLOOKUP関数でエラーを返さず空白で返す方法

エクセル|データの並べ替え(基本~応用)複数条件や任意条件の指定方法

Excel(エクセル) | 見出しの行や列を固定して表示・印刷する方法

Excel(エクセル)|VLOOKUPで自動で列番号を取得する方法

Excel(エクセル) 取り消し線の付け方 | ショートカットも紹介

Excel(エクセル)|名前の定義の設定方法と使い方を解説

MID関数で真ん中の文字を取り出す|Excel(エクセル)

Excel(エクセル)|図形を複数まとめて一括選択する方法

エクセル|条件付き書式をコピーする方法