概要
「日付から“n日を引く”」だけなら、関数は不要です。Excelの日付は「1日=1」の連番(シリアル値)なので、単純に “− n” の引き算で n 日前が求まります。例えば 2025/12/17 − 3 は 2025/12/14。月をまたぐ、うるう年をまたぐ場合も自動的に正しい日付に調整されます。
基本の使い方
書式
=日付セル - n
- 日付セル:A2など、日付が入っているセルや DATE/TODAY/NOW で生成した日付
- n:引く日数。正の整数を指定(例:3で3日前)
例
=A2 - 3 // A2の3日前
=DATE(2025,12,17)-5 // 2025/12/12
=TODAY() - 7 // 今日から1週間前
=NOW() - 1 // 現在日時の「前日・同時刻」
結果が数値に見えるときは、セルの表示形式を「日付(yyyy/mm/ddなど)」に変更します。
具体例
納期の“n日前”リマインド日
=納期セル - リマインド日数セル
納期が B2、リマインド日数が C2 なら、B2-C2 で“何日前に通知するか”の日付が取れます。
3日前・30日前などの固定引き
=基準日 - 3 // 3日前
=基準日 - 30 // 30日前
うるう年・月末またぎも自動対応
=DATE(2024,3,01)-1 // 2024/02/29(うるう年の月末)
=DATE(2025,3,01)-1 // 2025/02/28(平年の月末)
営業日ではなく“暦日”での減算
=TODAY()-10 // 土日・祝日関係なく10日前
営業日(平日ベース)で前倒ししたいなら WORKDAY を使います(応用で後述)。
応用テンプレート
結果を「yyyy/mm/dd (aaa)」で見やすく表示
=TEXT(A2-B2,"yyyy/mm/dd") & " (" & TEXT(A2-B2,"aaa") & ")"
A2の日付からB2日を引いた結果を整形表示。
月末から n 日前を簡単に
=EOMONTH(A2,0) - n
A2が属する“月末の n 日前”を取得。
月初から n 日前(前月末へまたぐケース)
=EOMONTH(A2,-1) - (n-1)
「当月月初の n 日前」を取りたいときの汎用形。
営業日で n 日前(祝日も除外)
=WORKDAY(基準日, -n, 祝日範囲)
例:
=WORKDAY(B2,-5,$H$2:$H$50)
納期B2の“5営業日前”を返します。
よくあるつまずきと対策
表示が数値になる
返り値はシリアル値。表示形式が“標準”だと整数に見えます。セルの表示形式を「日付」に変更してください。
土日・祝日は除外されない
単純な引き算は“暦日”です。営業日ロジックが必要なら WORKDAY(週末固定)や WORKDAY.INTL(週休日カスタム)を使います。
文字列日付だとうまく引けない
“2025/12/17” が文字列扱いだと計算できないことがあります。セルを“日付”として入力するか、DATE(年,月,日)で生成しましょう。
時刻を維持したい
NOW(日時)から n を引くと「前日・同時刻」になります。日付だけなら TODAY、時刻も必要なら NOW を選びます。
例題
問題1: A2(日付)の 10 日前を B2 に表示してください。
解答例:
=A2-10
問題2: C2(日付)の 3 日前を D2 に表示してください。
解答例:
=C2-3
問題3: 今日から 7 日前の日付を E2 に表示してください。
解答例:
=TODAY()-7
問題4: F2(日付)−G2(日数)の結果を「YYYY/MM/DD (aaa)」形式で H2 に表示してください。
解答例:
=TEXT(F2-G2,"yyyy/mm/dd") & " (" & TEXT(F2-G2,"aaa") & ")"
問題5: 納期 I2 の“10営業日前”を、祝日一覧 K2:K50 を除外して J2 に表示してください。
解答例:
=WORKDAY(I2,-10,$K$2:$K$50)
まとめ
「日付−n日」は“ただ引くだけ”でOK。Excelの日付は連番なので、月末・月初・うるう年も自動処理されます。暦日で良いなら「− n」、平日・祝日除外が必要なら WORKDAY/WORKDAY.INTL を使い分ける。仕上げは TEXTで整形——この設計を押さえると、前倒し期日の計算が驚くほどシンプルになります。
