Excelで日付から年度(4月始まり)を求める方法|YEAR関数とEDATE関数

Excelで日付から年度(4月始まり)を求める方法|YEAR関数とEDATE関数

日付データから、4月~翌3月を1年とした4月始まりで何年度にあたるのかを抽出したい場合は、3か月前の年で求める必要があるので、EDATE関数で3か月前の日付を求めて、YEAR関数で年を抽出して求めよう。

目的

年度・締め日を抽出

使用する関数
この記事の基本の式
数式=YEAR(EDATE(B3, -3))
目次

例題1|日付・時刻を抽出する

  1. 「年度」を求めるセル(A3セル)を選択し、「=YEAR(EDATE」と入力する。
  2. [開始日]…「集計日」のB3セルを選択する。
  3. [月]…「-3」と入力して、「Enter」キーで数式を確定する。
  4. 数式を必要な分だけ複写する。
A3に入力(A6までコピー):4月始まりの年度を求める
数式=YEAR(EDATE(B3, -3))
ひとことで集計日の3か月前の日付から、年を取り出す
EDATE(B3, -3)
集計日(B3)の3か月前の日付を返します。1〜3月が、前の年度に入ります
YEAR(…)
その日付の西暦の年を返します。これが年度です
データの流れ
① 2024/1/31 を3か月戻す
B32024/1/31戻した日2023/10/31
▼
② その年を取り出す結果
A32023
使用するExcel関数

YEAR関数、EDATE関数

日付から年度(4月始まり)を求める(YEARとEDATE)式 =YEAR(EDATE(B3, -3)) の解説図。A3に入力する
A3に =YEAR(EDATE(B3, -3)) を入力。2024/1/31 の3か月前は 2023/10/31 その年 → 2023年度

数式の解説

「EDATE(B3, -3)」の数式は、B3セルの「2024/1/31」の日付から3か月前の日付を求める。求めた日付から年を抽出する数式「 =YEAR(EDATE(B3, -3))」を作成すると、常に3か月前の日付から年が抽出されるので、結果、「集計日」から「4月始まり」で「年度」が取り出される。

[新方式]スピル で表現!

今まで : =YEAR(EDATE(B3, -3))
      ↓
スピル : =YEAR(EDATE(B3:B6*1, -3))

Excelデータダウンロード

練習用Excelファイル(無料ダウンロード)
この記事の解説で使うExcelデータです。数式と練習データが入っているので、本文の式を同じ表で試せます。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り

年度を「令和◯年度」のような和暦で表示したい場合は、こちらの記事をご覧ください。

日付から年・月・日を別々に取り出す基本は、こちらの記事で解説しています。

関数ごとの詳しい使い方は、YEAR関数・EDATE関数・MONTH関数・日付関数の練習問題で、実際の Excel の画面と練習用ファイルつきで説明しています。

まず動かしてみよう|この記事のサンプルをその場で試せます

練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。

【実機で検証】年度を求める式の落とし穴

年度を求める式を、年度の変わり目・空のセル・和暦で比べました。

エクセルで年度を求める式を3月31日と4月1日や空のセルと和暦で比べた画面
エクセルで年度を求める式を3月31日と4月1日や空のセルと和暦で比べた画面
場面YEAR(A1)-(MONTH(A1)<4)YEAR(EDATE(A1,-3))
2026/3/3120252025
2026/4/120262026
2024/2/29(うるう日)20232023
時刻付きの日付正しく計算正しく計算
空のセル1899(エラーなし)#NUM!
範囲をまとめて計算そのまま使える#VALUE!(+A2:A3 と書くと動く)

空のセルでは、式によって結果が違いました。YEAR と MONTH の式はエラーにならず 1899 を返すので、IF(A1=””,””,式) で空のときの表示を決めます。

和暦の年度は 2019 年度に注意

=TEXT(EDATE(A1,-3),"ggge") で和暦の年度を出すと、2019/7/31 は平成31、2019/8/1 は令和1 になりました。同じ 2019 年度が 2 つに分かれます。=TEXT(DATE(YEAR(EDATE(A1,-3)),4,1),"ggge") のように年度初めの 4/1 で変換すると、2019 年度はすべて平成31 になりました。

日付から年度を求めるときのよくある質問

エクセルで日付を年度に変換する関数は?

YEAR関数とEDATE関数を組み合わせます。=YEAR(EDATE(B3, -3)) は、日付の3か月前の年を取り出すので、4月始まりの年度になります。2024/1/31 は 2023 です。

日付から年度を求める式は、ほかの書き方もありますか?

=YEAR(A1)-(MONTH(A1)<4) でも求められます。試したところ、2026/3/31 は 2025、2026/4/1 は 2026 で、=YEAR(EDATE(A1,-3)) と同じ結果でした。

日付が空のセルだと、年度を求める関数の結果はどうなりますか?

式によって違いました。YEAR(EDATE(A1,-3)) は #NUM! になり、YEAR(A1)-(MONTH(A1)<4) はエラーにならず 1899 を返します。IF(A1="","",式) で空のときの表示を決めます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次