
Googleスプレッドシートで、日付を足し算・引き算する方法をご紹介します。算術演算子を使った基本の計算から、EDATE関数、DATEDIF関数といった複雑な期間を求める応用テクニックまで解説しているので、ぜひ参考にしてみてください。
n日前/後の日付を求める方法
日付の加算や減算は、算術演算子(+ または -)を使って簡単に求められます。
特定の日付を基準にする場合

- 1日後:
=A1+1 - 1週間前:
=A1-7
今日の日付を基準にする場合

- 明日の日付:
=TODAY()+1 - 1週間前の日付:
=TODAY()-7
nヶ月前/後の日付を求める方法

日付に月数を加算または減算したい場合、EDATE関数を使います。
EDATE関数は、指定した日付から特定の月数だけ後または前の日付を返します。
- 1ヶ月後の日付:
=EDATE(A2,1) - 1ヶ月前の日付::
=EDATE(A2,-1)
EDATE関数の引数:(開始日, [月])
n年前/後の日付を求める方法

年単位の計算も、EDATE関数の月数に「年数 × 12」を指定することで対応できます。
- 1年後の日付:
=EDATE(A2,1*12) - 1年前の日付:
=EDATE(A2,-1*12)
その他の複雑な日付の計算
nヶ月n日後の日付を求める

EDATE関数で求めたnヶ月後の日付に、算術演算子(+ または -)を使って日数を追加します。
- 1ヶ月と1週間後:
=EDATE(A2,1)+7 - 1ヶ月と1週間前:
=EDATE(A2,-1)-7
n年nヶ月後の日付を求める

年単位の計算(年数 × 12)の後に、月数を追加します。
- 1年と2ヶ月後:
=EDATE(A2,1*12+2) - 1年と2ヶ月前:
=EDATE(A2,-1*12-2)
n年nヶ月n日後の日付を求める

- 1年2ヶ月7日後:
=EDATE(A2,1*12+2)+7 - 1年2ヶ月7日前:
=EDATE(A2,-1*12-2)-7
日付同士の計算(期間の算出)
単純な日数を求める

期間の日数だけを求める場合は、算術演算子で「終了日 – 開始日」を計算します。
例:=B2-A2
複合的な期間(n年nヶ月n日)を求める

期間を「年」「月」「日」に分けて表示したい場合は、DATEDIF関数を使用します。この関数は、指定した「開始日」と「終了日」の期間を、指定した「単位」で返す関数です。
- 月数を求める場合:
=DATEDIF(A2,B2,"YM") - 日数を求める場合:
=DATEDIF(A2,B2,"MD")
もし、これらを1つの数式で求めたい場合、次のようになります。
例:=DATEDIF(A2,B2,"YM")&"ヶ月"&DATEDIF(A2,B2,"MD")&"日"
DATEDIF関数の引数:(開始日, 終了日, 単位)
DATEDIF関数の単位一覧
“D”: 期間全体の日数
“Y”:期間全体の年数
“M”:期間全体の月数
“YM”:年数を含まない残りの月数
“MD”:年数と月数を含まない残りの日数
“YD”:年数を含まない日数