Excel・スプレッドシート
更新日:2026年10月12日 読了目安:約8分

エクセル 日数計算 初日を含むには?+1が必要なケースを解説

「エクセル 日数計算 初日を含む」という検索で迷ったら、通常の差分に1を足す <code>=B2-A2+1</code> が基本です。ただし、開始日だけ・終了日だけを含める場合や、土日祝を除く場合は式が変わります。この記事では、開始日をA2、終了日をB2として、数え方を先に決めてから式を選ぶ手順を具体例で説明します。

日付計算を解説する田中さくらのプロフィール画像
田中さくら
実務で使える日付計算を解説するライター

前提:A2とB2には文字列ではなく、Excelが認識できる日付を入力します。勤怠、契約、請求の締めルールは会社や契約ごとに違うため、式の前に開始日と終了日を含めるか確認してください。

結論:エクセル 日数計算 初日を含むなら通常の差分に+1

開始日と終了日の両方を1日として数える「両端入れ」なら、=B2-A2+1 を使います。たとえばA2が2026/4/1、B2が2026/4/10なら、=B2-A2 は9、=B2-A2+1 は10です。4月1日から4月10日までを一覧の10日として扱うときの考え方です。

一方、経過した日数だけを知りたい場合は =B2-A2 のままです。開始日を含むかどうかはExcelの機能で自動判定されません。休業期間、契約期間、請求期間など、目的に合わせて数え方を明記してください。

開始日だけを含めるなら差分に1を足し、終了日だけを含めるなら差分は通常のままです。両端を含めない場合は差分から1を引きます。4パターンを実際に比較したいときは両端入れ日数計算ツールを使うと、式を決める前の確認が簡単です。

数えたい結果 コピーできる式 2026/4/1〜4/10の結果
開始日を含めない経過日数 =B2-A2 9日
開始日と終了日を含む =B2-A2+1 10日
開始日だけを含む =B2-A2+1 10日
両端を含めない =B2-A2-1 8日
土日祝を除く =NETWORKDAYS(A2,B2,祝日範囲) 曜日と祝日リストで変動
式を書く前の3つの確認
  • 日付と日付の間隔を知りたいのか、カレンダーに並ぶ日を数えたいのか。
  • 初日・最終日・両方のどこまでを対象にするのか。
  • 土日、祝日、会社休日を除外する必要があるのか。

まず日付セルを正しく準備する

A2やB2が文字列のままだと、#VALUE! になったり、見た目は同じでも引き算ができなかったりします。セルを選び、日付として認識されているかを確認してから式を入れます。表示形式を変えるだけでは、取り込んだ文字列が日付に変換されないことがあります。

CSVから取り込んだ値、先頭にアポストロフィが付いた値、地域設定と異なる「2026年4月1日」の文字列は要注意です。必要なら =DATE(2026,4,1) のように日付を組み立て、まず =B2-A2 で差分が出るかを確認します。

Excelで日付がシリアル値として保存される仕組みやDATE関数の引数を確認したいときは、MicrosoftのDATE関数の説明を参照してください。


通常の差分はB2-A2、DAYSなら引数の意味を確認

A2が開始日、B2が終了日なら、=B2-A2 が最も短い式です。2026年4月1日から4月10日までなら、4月1日から4月10日までに経過した日数として9が返ります。旅行やプロジェクトの経過期間など、開始日の0時を基準にした間隔に向いています。

関数名で処理を説明したい場合は =DAYS(B2,A2) も使えます。DAYSは終了日を先、開始日を後に置く順番です。=DAYS(A2,B2) と逆にすると負の値になるため、表の見出しとセル位置を固定しておくと安全です。

入力順が逆なら負の値になります。勤怠や請求データでは、その値を隠す前に入力順を確認してください。

通常差分と両端入れを列名で分ける

同じワークシートに「経過日数」と「対象日数」を置くなら、列名にも数え方を入れます。たとえば「差分(日)」はB2-A2、「対象日数(両端)」はB2-A2+1です。列名が曖昧だと、あとから担当者が+1を重ねたり削ったりします。

終了日が開始日より前なら、=IF(B2<A2,"日付順を確認",B2-A2) のように警告を返せます。契約や給与のデータでは、負数を無理に正数へ変換しないほうが原因を追いやすくなります。


初日・終了日を含むときの+1を具体例で確認

「4月1日から4月10日まで」をカレンダーに印を付けた日数として数えるなら、1日、2日、3日…10日で10個あります。引き算だけの9は日付間の境界の数であり、対象となる日付の個数とは違います。これが初日を含む日数計算で+1が必要になる理由です。

開始日だけを含める契約や、終了日を翌日の境界として扱う処理では、式が同じでも業務上の意味が異なります。初日を含むという言葉だけで判断せず、「4月1日と4月10日をそれぞれ1日として扱うか」を文章で確認します。

同じ日を指定した場合、=B2-A2 は0ですが、両端入れの =B2-A2+1 は1です。誕生日当日、1日だけの休暇、棚卸し日などではこの差がそのまま結果になります。

片端だけを含める必要がある場合は、開始日と終了日のどちらを境界にするかをチームで統一します。式を複雑にするより、入力欄の近くに「両端を含む」と注記するほうが、引き継ぎ時の誤解を減らせます。

4月1日から4月10日の早見
  • 通常の差分:=B2-A2 → 9日
  • 初日と終了日を含む:=B2-A2+1 → 10日
  • 同じ日:通常差分は0日、両端入れは1日
通常差分、両端を含む日数、平日だけの数え方を比較する日付タイムライン
同じ2つの日付でも、通常差分・両端入れ・営業日で結果が変わります。

DATEDIFは年月日表示用で、+1とは役割が違う

「2年3か月12日」のように期間を読みやすく分けたいときは、DATEDIFの単位を組み合わせます。完全な年は "y"、年を除いた月は "ym"、月を除いた日数は "md" です。これは両端を含む日数を返す式ではありません。

たとえば =DATEDIF(A2,B2,"y")&"年"&DATEDIF(A2,B2,"ym")&"か月"&DATEDIF(A2,B2,"md")&"日" のように表示できます。年月日の見た目と、監査用の総日数は別のセルに分けると、月末やうるう年をまたぐ期間も確認しやすくなります。

DATEDIFは開始日が終了日より後だとエラーになり、月の日数が一定ではないため、総日数を30で割った値とも一致しません。式をコピーする前にA2がB2以前かを確認し、ゼロの単位を表示するかどうかも決めます。

DATEDIFの単位や引数の仕様は、MicrosoftのDATEDIF関数の説明で確認できます。

月末とうるう年では総日数も残す

1月31日から2月28日、うるう年の2月をまたぐ期間では、月の長さが違うため、DATEDIFの年月日表示と総日数の印象がずれることがあります。報告書では両方を残し、どちらを正式値にするかを注記します。

年齢や在籍期間の説明には年月日が便利ですが、日割り請求や期限判定では実際の日付差が必要です。表示形式だけで処理を代用せず、用途に合う列を用意してください。


今日までの日数はTODAYに+1するかを決める

A2から今日までの経過日数は =TODAY()-A2、開始日を1日目として数えるなら =TODAY()-A2+1 です。TODAYは再計算のたびに日付が変わるため、毎日更新する一覧や経過日数の表示に向いています。

開始日が未来なら負の値になります。予定日までの日数として見せるなら式を分け、開始日が未来のときは「開始前」と表示するほうが誤解がありません。

月末の締め処理など、あとで同じ結果を再現したい帳票では、TODAYではなく保存した基準日セルを参照します。計算日を固定するか、更新される値として扱うかをシートの説明に残してください。

未来の日付を空欄にする例
  • =IF(A2>TODAY(),"開始前",TODAY()-A2)
  • 開始日を含める場合は最後を TODAY()-A2+1 に変更します。
  • 固定したい場合は、TODAYの代わりに基準日セルを参照します。

土日祝を除くならNETWORKDAYSを使う

平日だけを数える場合は =NETWORKDAYS(A2,B2) を使います。標準設定では土曜日と日曜日を除外し、開始日と終了日は営業日に該当すれば数えます。カレンダー日数の+1とは別のルールなので、式の説明を添えてください。

祝日や会社休日を除外するなら、F2:F20などに日付だけの休日リストを作り、=NETWORKDAYS(A2,B2,$F$2:$F$20) とします。$を付けて範囲を固定し、休日名を同じ範囲に混ぜないことがポイントです。

土日以外の休みを設定する場合はNETWORKDAYS.INTLを使います。基準日から5営業日後のように日付を求めるときはWORKDAYで、NETWORKDAYSは日数の集計、WORKDAYは到達日の計算という違いがあります。

NETWORKDAYSの引数と休日範囲を確認したいときは、MicrosoftのNETWORKDAYS関数の説明を参照してください。

日数計算と営業日数計算を混同しない

=B2-A2+1 は暦日ベースの両端入れ、=NETWORKDAYS(A2,B2,休日範囲) は勤務可能日ベースです。同じ期間を入力しても土日祝の数だけ結果が変わります。

曜日、祝日、会社独自の休業日まで正確に分けたい場合は、営業日数計算や平日・休日の集計ツールで結果を照合してください。


結果が1日ずれるときのチェック表

式が合っているのに結果が違うときは、入力セルの種類、端点のルール、休日範囲の3点を順番に確認します。次の表で原因を切り分けてください。

特に「4月1日から4月10日」が9なのか10なのかは、計算ミスではなく定義の違いです。正しい答えを探す前に、業務でどちらを必要としているかを決めます。

症状 よくある原因 確認・修正
#VALUE!になる 日付が文字列になっている DATEで日付を作り、セルの型と表示形式を確認する
いつも1日少ない 通常差分と両端入れを混同 B2-A2とB2-A2+1を並べて定義を確認する
負の値になる 終了日が開始日より前 入力順を直し、ABSで隠す前に原因を確認する
DATEDIFがエラー 開始日が終了日より後 A2がB2以前か、両セルが日付か確認する
営業日が多すぎる 祝日範囲を指定していない NETWORKDAYSの第3引数に休日範囲を追加する
毎日結果が変わる TODAYを使っている 固定基準日セルに置き換えるか更新値と明記する

オンライン計算ツールで式を照合する

式を作ったら、サイトのエクセル日数計算ツールで通常差分、両端入れ、土日祝除外の結果を並べて確認できます。セルの値をそのまま入力し、Excelの結果と一致するかを見ます。

初日を含むか、終了日を含むかを4パターンで比較したい場合は両端入れ日数計算ツールが便利です。単に2つの日付の差を確認するだけなら日付計算を使います。

オンライン結果は式の検算用です。給与、契約、請求の正式な判断では、会社規程や契約書の数え方を優先し、採用した式と基準日をシートに残してください。

日数計算ツールを使う

まとめ:先に数え方を決めてから式を選ぶ

エクセルの日数計算で初日と終了日を含むなら =B2-A2+1、経過した日数だけなら =B2-A2 です。DATEDIFは年月日表示、TODAYは今日まで、NETWORKDAYSは土日祝を除いた日数に使います。どの式も、数え方の定義を代わりに決めてくれるわけではありません。

迷ったら、通常差分と両端入れを両方計算し、対象期間の例を1行添えます。Excelの結果をエクセル日数計算と照合し、業務ルールと一致するほうを正式値として採用してください。

開始日、終了日、休日リスト、基準日を分けて保存すると、担当者が変わっても式の意図を追跡できます。小さな+1を曖昧にしないことが、日数計算の再現性を高めます。

エクセル 日数計算 初日を含む場合のFAQ

エクセルで初日を含む日数はどう計算しますか?

開始日をA2、終了日をB2に入れ、=B2-A2+1 とします。4月1日から4月10日なら10日です。

B2-A2とB2-A2+1は何が違いますか?

B2-A2は日付間の経過日数、B2-A2+1は開始日と終了日をそれぞれ1日として数える両端入れです。

開始日だけを含めたいときも+1ですか?

開始日を対象にし、終了日を境界として扱う定義なら+1になります。契約や請求では、対象日の定義を文書で確認してください。

同じ日を入力した場合の結果は?

通常差分は0日、両端入れは1日です。1日だけの休暇やイベントを数えるときに差が出ます。

DATEDIFに+1を足せば初日を含められますか?

DATEDIFは年月日を分けて表示する関数で、単純な両端入れとは役割が違います。総日数の両端入れはB2-A2+1で別に計算してください。

土日祝を除いて初日を含むには?

NETWORKDAYS(A2,B2,休日範囲)を使います。開始日と終了日が営業日なら含まれるため、暦日の+1とは別に休日リストを確認します。

日数が1日ずれる原因は何ですか?

通常差分と両端入れの定義、日付セルの文字列化、時刻の混入、休日範囲の漏れを順番に確認してください。

オンライン計算ツールの結果とExcelが合いません

開始日・終了日、端点のルール、土日祝の扱いを揃えてから式を見直してください。

関数の仕様を公式情報で確認する

引数の順番や日付単位を確認したいときは、Microsoftの公式サポートを参照してください。

  1. Microsoft サポート:DATEDIF関数
  2. Microsoft サポート:DAYS関数
  3. Microsoft サポート:NETWORKDAYS関数

関連する日数計算ページ