Excelで日付に1年を足して翌年の日付を求めたいときは、単純な足し算ではなく、日付の規則に合った関数を選ぶことが大切です。

たとえば契約更新日、誕生日の翌年、保証期限、年度ごとの管理表などでは、元の日付を基準にして正確に1年後を表示したい場面が多いでしょう。

最も扱いやすい方法は、EDATE関数で月数を12か月加算する方法です。

基本の数式

=EDATE(A2,12)

A2に入力された日付の1年後を求める数式です。

ただし、2月29日を含むうるう年の日付や、表示形式が文字列になっているセルでは注意が必要です。

この記事では、指定日付の翌年を求める数式、DATE関数を使う方法、エラー時の確認ポイント、実務で使いやすい応用例まで解説します。

 

エクセルで1年足す方法【EDATE関数】

開始日 1年後 数式
2026/4/15 2027/4/15 =EDATE(A2,12)

それではまず、EDATE関数で指定した日付に1年を加算する方法について解説していきます。

EDATE関数は開始日から指定した月数だけ前後した日付を返す関数であり、1年後を求める用途では12を指定します。

EDATE関数の書式

=EDATE(開始日,月数)

1年後を出す場合は、月数に12を入力します。

 

基本数式の入力手順

まずA列に基準となる日付、B列に翌年の日付を表示する表を用意しましょう。

サンプルデータでは、1行目を見出し行とし、A2に2026/4/15が入力されているものとします。

エクセルで1年足す方法【EDATE関数】 - 基本数式の入力手順

B2を選択して、数式バーまたはセル内へ=EDATE(A2,12)と入力します。

Enterキーを押すと、B2には2027/4/15と表示されます。

日付表示が2027年4月15日や2027-04-15になった場合でも、値は同じ日付です。

表示だけを変更したいときは、セルの書式設定から日付の表示形式を選びましょう。

【操作のポイント】EDATE関数の第2引数は年数ではなく月数です。

 

オートフィルによる複数行へのコピー

契約者や商品ごとに多くの日付が並んでいる場合は、数式を1件ずつ入力する必要はありません。

B2に数式を入力したあと、セル右下に表示される小さな四角形であるフィルハンドルを下方向へドラッグします。

エクセルで1年足す方法【EDATE関数】 - オートフィルによる複数行へのコピー

これにより、B3ではA3を参照し、B4ではA4を参照する数式へ自動調整されます。

参照先を固定していないA2は、コピー先に応じてA3、A4へ変化する相対参照です。

データ件数が多い表では、フィルハンドルをダブルクリックすると、隣接するデータの末尾まで数式を素早くコピーできます。

ただし途中に空白行があると、想定より早くコピーが止まることがあります。

【操作のポイント】元の日付がA列に連続している表では、フィルハンドルのダブルクリックが便利です。

 

EDATE関数で扱う月末日と2月29日

EDATE関数は月単位の日付計算に適しており、月末をまたぐケースにも対応します。

たとえば2024年2月29日に12か月を加算すると、翌年には2月29日が存在しないため、結果は2025年2月28日になります。

存在しない日付を無理に作らず、その月の最終日へ調整する点がEDATE関数の特徴です。

うるう年の日付を1年後へ進める数式

=EDATE(A2,12)

A2が2024/2/29なら、結果は2025/2/28です。

毎年同じ月の末日を基準に更新日を計算したい場合にも、この動作は実務に適しています。

【操作のポイント】2月29日の翌年は2月28日となるため、契約条件の定義もあわせて確認しましょう。

 

DATE関数で翌年の日付を求める方法

開始日 1年後 数式
2026/10/1 2027/10/1 =DATE(YEAR(A2)+1,MONTH(A2),DAY(A2))

続いては、DATE関数とYEAR関数を組み合わせて翌年の日付を作成する方法を確認していきます。

この方法は年、月、日を分解して計算するため、数式の仕組みを明確にしたい場合に役立ちます。

DATE関数を使う基本式

=DATE(YEAR(A2)+1,MONTH(A2),DAY(A2))

年だけに1を加え、月と日は元の日付から取得します。

 

YEAR関数とDATE関数の組み合わせ

YEAR(A2)はA2の日付から年だけを取り出す関数です。

MONTH(A2)は月、DAY(A2)は日を取り出します。

DATE関数で翌年の日付を求める方法 - YEAR関数とDATE関数の組み合わせ

そのため、=DATE(YEAR(A2)+1,MONTH(A2),DAY(A2))は、元の日付の年だけを翌年へ変更する式になります。

たとえばA2が2026/10/1なら、YEAR(A2)は2026、MONTH(A2)は10、DAY(A2)は1です。

最終的にDATE(2027,10,1)が計算され、2027/10/1が返されます。

【操作のポイント】DATE関数は年、月、日を別々に指定するため、日付構成を調整したい計算にも応用できます。

 

DATE関数を選ぶ場面

DATE関数で翌年の日付を求める方法 - DATE関数を選ぶ場面

EDATE関数は月数を足す処理に向いていますが、DATE関数は年や月や日を個別に加工したい場面で使いやすい関数です。

たとえば翌年の4月1日に必ず更新したい場合は、元の日付の月日をそのまま使う必要がありません。

翌年の4月1日を求める数式

=DATE(YEAR(A2)+1,4,1)

A2の日付を基準にして、翌年の4月1日を返します。

年度開始日、定期点検の基準日、翌年度の予定日などを作る際に活用できます。

日付の一部を固定したいときは、DATE関数のほうが読みやすい場合があります。

【操作のポイント】月日を固定する式では、MONTH関数やDAY関数の部分を固定数値へ置き換えます。

 

2月29日の計算結果に関する注意点

DATE関数で2024/2/29から翌年を求める場合、=DATE(YEAR(A2)+1,MONTH(A2),DAY(A2))は2025年2月29日を作ろうとします。

Excelでは存在しない日付をそのままエラーにせず、日付を繰り上げて2025年3月1日として扱います。

これはEDATE関数の2025年2月28日とは異なる結果です。

うるう日の翌年を月末扱いにしたいならEDATE関数、日数の繰り上げを許容するならDATE関数という違いがあります。

更新ルールとしてどちらが正しいかは、契約書や社内ルールにより異なります。

【操作のポイント】2月29日を含むデータでは、実際の結果を確認してから大量の数式コピーを行いましょう。

 

翌年の日付を表示する数式バーとオートフィル

A列 日付 B列 翌年
2026/4/15 =EDATE(A2,12)
2026/8/31 オートフィルでコピー

続いては、数式を入力してオートフィルで一覧へ反映する画面操作を確認していきます。

最初のセルで正しく数式を作れば、後続行への処理は短時間で済みます。

更新日一覧.xlsx – Excel− □ ×
ファイルホーム挿入数式データ
BI罫線中央揃えΣ
名前
B2
fx
=EDATE(A2,12)
A B C
1 開始日 翌年の日付
2 2026/4/15 2027/4/15
3 2026/8/31
4 2026/12/1
フィルハンドルを下へドラッグ

 

セルB2への数式入力

B2をクリックすると、選択したセルの内容が数式バーに表示されます。

数式バーへ=EDATE(A2,12)を入力し、Enterキーで確定します。

セル内へ直接入力しても結果は同じですが、長い数式は数式バーで確認すると参照先を見つけやすくなります。

数式の先頭にあるイコール記号を入力し忘れると、Excelは計算式ではなく文字列として扱います。

確認する内容

開始日の参照先がA2になっているか確認します。

月数が12になっているか確認します。

【操作のポイント】数式を編集するときは、セルをダブルクリックするかF2キーを押して編集状態にします。

 

フィルハンドルによる数式コピー

B2の右下にマウスポインターを合わせると、黒い十字形のポインターが表示されます。

その状態で下方向へドラッグすると、選択範囲の各行へ数式がコピーされます。

コピー後のB3には=EDATE(A3,12)、B4には=EDATE(A4,12)という式が入ります。

行ごとに開始日を参照する一覧表では、相対参照を活用することで入力作業を減らせます。

誤って横方向へコピーすると参照列が変わるため、ドラッグ方向には注意が必要です。

【操作のポイント】フィルハンドルのコピー後は、最終行と途中の数行で結果を確認しましょう。

 

表示形式を日付へ整える操作

数式が正しくても、セルの書式が標準のままだと45600のような数値が表示されることがあります。

これはExcelが日付を連続したシリアル値として内部保存しているためです。

対象セルを選択し、ホームタブの表示形式から短い日付または長い日付を選びます。

より細かく整える場合は、セルを右クリックしてセルの書式設定を開き、日付またはユーザー定義を使用します。

表示が数字でも数式自体が間違っているとは限らず、表示形式だけの問題かもしれません。

【操作のポイント】日本語の帳票ではyyyy/m/d、海外向けの表ではyyyy-mm-ddなど、用途に合う表記を統一します。

 

日付に一年を加算できない原因

入力値 起こりやすい問題 確認内容
2026年4月15日 文字列扱い 右寄せか数式で判定

続いては、1年を足す数式がエラーになる場合や、期待した日付にならない原因を確認していきます。

日付の見た目が正しくても、セルの内部では文字列として保存されていることがあります。

 

日付が文字列として入力されている状態

A2に日付らしい文字が表示されていても、Excelが日付値として認識していないとEDATE関数は正しく計算できません。

セル内に先頭のアポストロフィが付いている場合や、全角記号を含む文字列では発生しやすい問題です。

文字列の日付は、セル内で左寄せになっている場合がありますが、配置だけでは断定できません。

数式として=ISNUMBER(A2)を入力し、TRUEなら数値の日付、FALSEなら文字列の可能性があります。

日付を数値へ変換する例

=DATEVALUE(A2)

日付として解釈できる文字列を、Excelの日付値へ変換します。

変換後は、結果セルへ日付表示形式を設定しましょう。

【操作のポイント】外部システムから貼り付けた日付は、最初に文字列かどうかを確認します。

 

空白セルとエラー表示の処理

日付が未入力の行にも数式をコピーすると、空白を基準にした意図しない日付やエラーが表示されることがあります。

入力がある行だけ翌年の日付を表示したい場合は、IF関数を組み合わせると見やすくなります。

空白時は空白を返す数式

=IF(A2=””,””,EDATE(A2,12))

A2が空白なら空白、日付があれば1年後の日付を返します。

空白判定を加えると、未入力の行が多い管理表でも不要な表示を防げます。

エラーを非表示にするためだけにIFERROR関数を使う方法もありますが、原因を見逃す可能性があるため注意しましょう。

【操作のポイント】空白とエラーは意味が異なるため、まず元データの状態を確かめます。

 

1900年日付システムとシリアル値

Excelでは日付を連番の数値として保存しており、通常のWindows版Excelでは1900年1月1日付近を基準に日数が加算されています。

このため日付セルに数値が見えても、計算の結果ではなく表示形式の設定によることがあります。

日付計算を行うセルは、開始日と結果日の両方を日付形式にそろえると確認しやすくなります。

日付の足し算では見た目よりも、セルが日付値として認識されているかが重要です。

CSVファイルを開いた直後や、コピー元の形式が混在する表では特に注意が必要でしょう。

【操作のポイント】セルの書式設定で表示形式を変えても、文字列を日付値へ変換できるわけではありません。

 

更新日と期限管理に使う応用数式

契約開始日 更新日 状態
2026/4/15 =EDATE(A2,12) 期限判定用

続いては、更新日や有効期限の管理表で使える応用数式を確認していきます。

1年後の日付を表示するだけでなく、期限までの日数や更新対象の判定も組み合わせると、管理表の実用性が高まります。

 

一年後の前日を満了日にする数式

契約開始日から1年間有効という条件では、更新日の前日を満了日として管理するケースがあります。

この場合は、EDATE関数で1年後を求めてから1日を引きます。

1年後の前日を求める数式

=EDATE(A2,12)-1

A2が2026/4/15なら、結果は2027/4/14です。

この数式は期間の起算日を含める契約や、保険期間、会員資格の期限などで使われます。

開始日と更新日と満了日の定義は、社内規程や契約条件に合わせて統一することが重要です。

【操作のポイント】満了日を前日にするかどうかは、日付計算より先に運用ルールを確認します。

 

更新期限までの日数を求める数式

翌年の日付を求めたあと、今日から更新日まで何日残っているかを表示すると、対応漏れの防止につながります。

今日の日付はTODAY関数で取得できます。

更新日までの残日数を求める数式

=B2-TODAY()

B2に翌年の日付が入力されている場合、更新日までの日数を返します。

結果が30以下になった行だけを条件付き書式で色付けすると、期限が近い項目を見つけやすくなります。

過去の日付ではマイナス値になるため、すでに期限を過ぎた案件の把握にも役立ちます。

【操作のポイント】TODAY関数はブックを再計算した日に更新されるため、毎日変化する管理表に向いています。

 

更新対象を文字で表示する数式

数値の日数だけでは判断しにくい場合は、IF関数を使って更新対象かどうかを文字で表示できます。

30日以内の更新対象を判定する数式

=IF(B2-TODAY()<=30,”更新確認”,””)

B2の日付まで30日以下なら更新確認と表示します。

さらに期限切れも分けるなら、複数のIF関数を組み合わせる方法があります。

日付計算の結果を判定列へつなげると、一覧を見ただけで優先順位を判断しやすくなります。

ただし、休日を除いた営業日で管理したい場合はNETWORKDAYS関数など別の関数を検討しましょう。

【操作のポイント】判定用の文字列は、チーム内で意味が伝わる短い表現にそろえます。

 

まとめ 指定した日付の翌年を求めるエクセルで一年足す方法

目的 おすすめの数式
通常の1年後 =EDATE(A2,12)
年だけを変更 =DATE(YEAR(A2)+1,MONTH(A2),DAY(A2))

Excelで指定した日付の翌年を求めるなら、基本的には=EDATE(A2,12)を使うと簡潔です。

EDATE関数は12か月後を計算するため、月単位で更新日や有効期限を管理する表に適しています。

年、月、日を個別に調整したい場合は、DATE関数、YEAR関数、MONTH関数、DAY関数を組み合わせましょう。

2月29日のように翌年に同じ日付が存在しないケースでは、EDATE関数とDATE関数で結果が異なる点に注意が必要です。

日付が計算できない場合は、元データが文字列になっていないか、空白セルが混ざっていないかを確認します。

更新日を求める式にTODAY関数やIF関数を組み合わせれば、期限が近い案件の管理にも活用できます。

まずは小さなサンプル表で数式と結果を確認し、問題がなければオートフィルで一覧へ展開していきましょう。

ABOUT ME
white-circle7338
私自身が今まで経験・勉強してきた「エクセル」「ビジネス用語」「生き方」などの情報を、なるべくわかりやすく、楽しく、発信していきます。 一緒に人生を楽しんでいきましょう