Excel関数 逆引き集 | 年度を求める → IF(MONTH<4, YEAR-1, YEAR)

Excel
スポンサーリンク

概要

日本の一般的な会計年度(4月始まり)を求めるなら、「月が1〜3月なら前年、4〜12月なら当年」というルールでIF関数を使います。日付から月と年を取り出し、条件分岐で年度年(YYYY)を返すのが最短です。年度ラベル(例:2024年度、2024-2025)や年度開始・終了日も合わせて作れます。


基本の考え方

「4月始まりの年度」は、4〜12月が“当年”、1〜3月が“前年扱い”です。月を判定するにはMONTH(日付)、年はYEAR(日付)を使い、IFで分岐します。

  • 月が4未満なら YEAR(日付)-1
  • それ以外なら YEAR(日付)

基本の使い方

年度年(YYYY)を返す

=IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2))

A2が1〜3月なら前年、4〜12月なら当年の“年度年”を返します。

「YYYY年度」と文字列で表示

=IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2)) & "年度"

「YYYY-YYYY」の年度レンジを表示

=IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2)) & "-" & IF(MONTH(A2)<4, YEAR(A2), YEAR(A2)+1)

例:2024年度なら「2024-2025」。


具体例

年度の“開始日(4/1)”を求める

=DATE(IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2)), 4, 1)

年度の“終了日(翌年3/31)”を求める

=DATE(IF(MONTH(A2)<4, YEAR(A2), YEAR(A2)+1), 3, 31)

年度の“月番号(1〜12)”を求める(4月=1, 3月=12)

=MOD(MONTH(A2)+8,12)+1

応用テンプレート

年度キー(YYYYMMの年度基準)を作る

年度年×年度内月番号で「YYYYMM」キーに整形。

=TEXT(IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2)),"0000") & TEXT(MOD(MONTH(A2)+8,12)+1,"00")

当年度の全月リスト(4月〜翌年3月)を生成(Microsoft 365)

=LET(
  fy, IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2)),
  start, DATE(fy,4,1),
  TEXT(EDATE(start, SEQUENCE(12,1,0,1)), "yyyy/mm")
)

当年度の週次・月次集計の期間条件(SUMIFS用)

週次や月次で集計する際、年度の開始・終了を条件に。

=SUMIFS(売上範囲, 日付範囲, ">="&DATE(IF(MONTH(A2)<4,YEAR(A2)-1,YEAR(A2)),4,1), 日付範囲, "<="&DATE(IF(MONTH(A2)<4,YEAR(A2),YEAR(A2)+1),3,31))

よくあるつまずきと対策

3月末/4月頭の境界

年度切替は「4/1」。3/31は前年度、4/1は新年度。境界日をまたぐ条件では“開始>=4/1”“終了<=翌年3/31”の両条件を必ず設定します。

文字列日付の誤解釈

“YYYY/MM/DD”を文字列で持つと環境依存で不安定。セルを“日付”として入力するか、DATE(年,月,日)で生成しましょう。

年度が4月始まりでない場合

始まり月がmなら「MONTH< m」で前年、それ以外は当年に調整します。例:7月始まりなら IF(MONTH(A2)<7, YEAR(A2)-1, YEAR(A2))

年度ラベルのゼロ埋め

文字列化はTEXTで行うと安全です。TEXT(年度年,"0000") を使うと整います。


例題

問題1: A2の日付の“年度年(YYYY)”をB2に表示してください。

=IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2))

問題2: A2の日付の“年度ラベル(YYYY年度)”をC2に表示してください。

=IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2)) & "年度"

問題3: A2の日付の“年度レンジ(YYYY-YYYY)”をD2に表示してください。

=IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2)) & "-" & IF(MONTH(A2)<4, YEAR(A2), YEAR(A2)+1)

問題4: A2が属する“年度の開始日(4/1)”をE2、“終了日(翌年3/31)”をF2に表示してください。

開始日:

=DATE(IF(MONTH(A2)<4, YEAR(A2)-1, YEAR(A2)), 4, 1)

終了日:

=DATE(IF(MONTH(A2)<4, YEAR(A2), YEAR(A2)+1), 3, 31)

問題5: A2の日付の“年度内月番号(4月=1 … 3月=12)”をG2に表示してください。

=MOD(MONTH(A2)+8,12)+1

まとめ

年度判定の核は「IF(MONTH<開始月, YEAR-1, YEAR)」。これで年度年が決まれば、DATEで開始・終了日、MODで年度内月番号、TEXTでラベルやキーまで一気通貫。4月始まり以外の年度にも“開始月を変えるだけ”で応用でき、週次・月次の集計条件設計がシンプルに整います。

タイトルとURLをコピーしました