生年月日から現在の年齢を計算したい時があります。複数人の場合、そこから平均年齢を出したい時もあるかもしれません。そんな時に便利なDATEDIF関数やAVERAGEIF関数について解説しています。使い方はとてもかんたんです。
エクセルにはさまざまなバージョンがあり,それにより機能や操作,画面表示が異なることがあります。この記事の内容は,執筆時点での参考情報としてご紹介しており,変更されたり新機能が加わったりすることがあります。詳しい情報は,Microsoft公式サイトからご確認ください。
やりたいこと
画像のように、「生年月日」から「年齢」を自動で表示して、それを基に平均年齢も計算します。
生年月日から年齢を表示する
この表を基に解説します。
DATEDIF関数
DATEDIF関数を使います。2つの日付の間の日数、月数、年数を計算する関数です。
ロータス1-2-3 の古いブックをサポートするために用意されました。そのため、Microsoft公式サポートの関数ではないですが、年齢を計算する数式で利用すると便利です。
数式の入力
=DATEDIF(C2,TODAY(),”Y”)
- =DATEDIFと入力 ※
- 生年月日が入力されたセルを参照
- TODAY関数を使う
- 単位として”Y”を入力 #
※ 公式サポート関数ではないので、候補に上がってきません。手入力します。
# 年(year)を意味する”Y”です。ちなみに、日(day)数なら”D”、月(month)数なら”M”になります。今回は年齢なので”Y”を使います。
2つの日付の間の年数(74)が返されました。
後はオートフィル機能で、全員の年齢を表示させます。かんたんですね。
平均年齢を計算する
全員の平均年齢と男女別の平均年齢も計算してみます。
DATEDIF関数とAVERAGE関数の組み合わせ
全員の平均年齢を計算します。
=DATEDIF(AVERAGE(D2:D11),TODAY(),”Y”)
- =DATEDIFと入力
- AVERAGE関数を使う
- 生年月日の範囲を指定する
- TODAY関数を使う
- 単位として”Y”を入力
平均年齢を計算するポイントは、開始日にAVERAGE関数を使うことです。これによって平均生年月日が返されます。
全員の平均年齢(45)が返されました。
では、男女別の平均年齢を計算してみましょう。
AVERAGEIF関数
AVERAGEIF関数を使います。範囲内の条件に一致するすべてのセルの平均値 を返す関数です。
数式の入力
=AVERAGEIF($C$2:$C$11,$C$14,$E$2:$E$11)
- AVERAGEIF関数を使う
- 性別の範囲を指定する ※
- 条件として男を指定する ※
- 平均対象範囲を指定する ※
※ 範囲や条件は絶対参照にして、行や列の挿入・削除があってもずれないようにします。選択後にF4キーを押して絶対参照にしておきましょう。
「女 平均年齢」も同様です。
第2引数の条件は、女(画像ではC15セル)を指定します。
デフォルトなら小数点第1位まで表示されます。小数点以下の桁数を減らしたい場合は、ホームタブ内の「数値」にあるマーク(赤囲み部分)をクリックしましょう。
まとめ
いかがでしたか。今回は生年月日から現在の年齢を自動で表示したり、そこから平均年齢を計算する方法でした。DATEDIF関数を使うとかんたんでしたね。AVERAGEIF関数を使えば、男女別の平均年齢も計算できます。
実務で使う機会も多いかもしれません。この記事が少しでも皆様のお役に立つことを願っています。では、次回もお楽しみに!