YEAR関数の使い方|日付から「年」だけを抽出する

Excel関数

Excel(エクセル)YEAR関数の使い方|日付から「年」だけを抽出する

使用関数:YEAR

YEAR(イヤー)関数とは?

YEAR関数は日付から「年」に当たる数字だけを抽出します。誕生日から誕生年を、入社年月日から入社年度を、イベントの開催予定日から開催年度を取り出して表示します。

日付から「月」に当たる数字を抽出するにはMONTH関数を使います。

MONTH関数の使い方|日付から「月」だけを抽出する
日付から「月」に当たる数字だけを抽出するMONTH関数の使い方を初心者にも分かりやすく解説します。MONTH関数の引数の指定方法、常に「前月」「今月」「翌月」を自動表示させる方法、MONTH関数で1900年の日付が返される場合の対処法など。

日付から「日」に当たる数字を抽出するにはDAY関数を使います。

DAY関数の使い方|日付から「日」だけを抽出する
日付から「日」の数字だけを抽出するDAY関数の使い方を初心者にも分かりやすく解説。DAY関数とTODAY関数を組み合わせ指定日と本日の日付が一致するか判定する使い方、DAY関数とIF関数、DATE関数と組み合わせ閏年を判定する使い方など。

YEAR関数の引数と書式

「数式」タブ「関数ライブラリ」→「日付/時刻」→ YEARをクリックします。
「関数ライブラリ」→「日付/時刻」→ YEAR
YEAR関数の引数は「シリアル値」です。

シリアル値とは1900年1月1日を「1」として、1日1ずつ加算した数値で日付を表したものです。シリアル値を足し算・引き算することで期間を計算したり、1週間後、1ヶ月前、1年後の日付を簡単に取得することができます。シリアル値は「表示形式」によって日付のスタイルで表示されます。「2022/1/19」「令和4年1月19日」「19-Jan」は全て同じシリアル値「44580」です。表示が違っても、並べ替えや計算にはこの数字が使われます。

YEAR関数の書式の構成はこうなります。
YEAR関数の書式の構成

YEAR関数で「年」を取り出す

YEAR関数の引数「シリアル値」に日付を指定します。ここでは誕生年を取り出すために誕生日のセルをクリックしてセル参照します。
YEAR関数の引数「シリアル値」に誕生日のセルをクリックで指定

「シリアル値」にはセル参照の他、直接シリアル値そのものを数値で指定したり、日付を表す文字列を「” “」で囲って指定することもできます。
YEAR関数の引数「シリアル値」にシリアル値や日付文字列を直接入力

YEAR関数の戻り値を和暦にしたい

YEAR関数で取得されるのは西暦の4桁の数字です。「令和4年1月19日」と表示されたセルでYEAR関数を実行しても和暦の「4」は返りません。

「令和4年」と和暦を表示させたいなら、「令和4年1月19日」をコピーして「セルの書式設定」→「表示設定」→「ユーザー定義」で「[$-ja-JP-x-gannen]ggge”年”;@」と設定します。
「セルの書式設定」→「表示設定」→「ユーザー定義」で和暦の年を表示

YEAR関数がうまくいかない時の対処法

YEAR関数を表示させるセルの表示形式が「日付」になっている

下図では「2022/1/22」の日付からYEAR関数で年を取り出そうとB2セルに「=YEAR(A2)」の数式を入れましたが、「2022」が返るはずのセルに「1905/7/14」とおかしい日付が返っています。
YEAR関数でおかしい日付が返された例
実は、このセルの表示形式が「日付」になっていたためにExcelは「2022」をシリアル値と解釈し、対応する日付「1905/7/14」が表示されたというわけです。表示形式を「標準」にすれば「2022」に戻ります。
YEAR関数が入るセルの表示形式が日付になっている

YEAR関数に指定した日付がExcelで「日付」と判定されていない

日付を表す文字列を和暦で指定したとしても、Excelが日付と判定できるものならYEAR関数で年を取得することができます。

ですが、一見「日付」を表していると見える文字列でも年月日の間をスペースで区切っていたり、末尾に曜日が入っていたりすると、Excelが日付とは見なさないことがあります。表示形式のユーザー定義でそのようなスタイルにしているなら問題ありませんが、手入力やコピペで文字列として表示されたものは日付と認識されない可能性があるのです。
Excelが日付とは見なさない文字列
YEAR関数でうまく年が取り出せない時は日付に余計な文字が混じっていないかを、まず確認しましょう。特定した余計な文字を削除すれば、YEAR関数で年が取り出せます。
修正する範囲が大きい場合はSUBSTITUTE関数でまとめて削除するなどの方法で対処します。
YEAR関数で年が取得できるようにSUBSTITUTE関数で不要な文字を削除

YEAR関数のまとめ
  • YEAR関数は日付から「年」に当たる数字だけを抽出します
  • YEAR関数の引数は「シリアル値」です。「シリアル値」にはセル参照の他、シリアル値そのもの、日付を表す文字列を指定できます
  • YEAR関数で取得されるのは西暦の4桁の数字で、戻り値に和暦は返りません。和暦の年にしたい時は表示設定のユーザー定義で実装します
  • YEAR関数がうまくいかない、おかしい日付が返される場合はセルの表示形式を確認しましょう
タイトルとURLをコピーしました