エクセルで社員の平均年齢と中央値を出す方法!人事担当者向け解説

Excel

すもリーマン
すもリーマン

社員の平均年齢って何歳だろう?
社員の中央値って、何歳?

でんちゃん
でんちゃん

そんな疑問を解決できる、エクセルを使った簡単な方法をご紹介します!
仕事で平均年齢を出してや中央値を出してとお願いされてもこの記事を読めばすぐに算出できるようになりますよ!


ステップ1:社員の「年齢」を自動で計算してみよう

まずは、社員の生年月日データから年齢を算出します。

手入力で計算するのは大変ですし、誕生日が来るたびに更新するのも手間ですよね。

エクセルを使えば、今日の日付に合わせて年齢を自動で計算してくれるので、常に最新のデータを保つことができます。

今回は、以下のような社員データがあると仮定して進めます。

【データ例】

社員一覧表


年齢を計算する2つの関数

年齢を計算するには、主に2つの関数を使います。

でんちゃん
でんちゃん

どちらも簡単なので、好きな方を選んでください!

1. DATEDIF関数を使う方法

DATEDIF関数は、2つの日付の間の期間を計算する関数です。

  • 書式: =DATEDIF(開始日, 終了日, 単位)
  • 今回の入力例(C2セル): =DATEDIF(B2, TODAY(), “Y”)

この式をC2セルに入力してEnterキーを押すと、B2セルに入力された生年月日から今日までの年数が計算されます。

関数の解説

  • B2:社員の生年月日が入力されているセル
  • TODAY():今日の日付を自動で取得する関数
  • "Y":年数を取得するための指定(Yearの頭文字)
=DATEDIF(B2, TODAY(), “Y”)の入力結果

2. YEAR関数とTODAY関数を組み合わせる方法

この方法もシンプルです。

=YEAR(TODAY())-YEAR(B2)

この式をC2セルに入力すると、今日の年数から生年月日の年数を引いて、年齢を計算できます。ただし、これだけだと「誕生日を迎えていない人」の年齢が1歳多くなってしまうことがあります。

より正確に計算したい場合は、以下の数式を使います。

=YEAR(TODAY())-YEAR(B2)-(TODAY()<DATE(YEAR(TODAY()),MONTH(B2),DAY(B2)))

少し複雑に見えますが、これは「もし今日の日付が生年月日より前だったら、1を引く」という処理を追加しています。

=YEAR(TODAY())-YEAR(B2)-(TODAY()<DATE(YEAR(TODAY()),MONTH(B2),DAY(B2)))の入力結果

上記の関数を使う場合、表示形式を”数値“にしないと上手く表示されない場合があります。

すもリーマン
すもリーマン

どちらの方法を使っても、同じように年齢を算出できるんだね!
一番上のセルに式を入れたら、そのセルをオートフィル機能で一番下までドラッグするだけで、全社員の年齢を一気に計算できて便利!


ステップ2:社員の「平均年齢」と「中央値」を計算しよう

年齢の計算ができたら、次は平均年齢中央値を算出します。

平均年齢は、社員全体の年齢の傾向を把握するためによく使われる指標です。
中央値は、データを小さい順に並べたときに、ちょうど真ん中にくる値のことです。

  • 平均年齢に使用する関数: AVERAGE関数
  • 中央値に使用する関数: MEDIAN関数
  • 書式: =AVERAGE(範囲) / =MEDIAN(範囲)

先ほど年齢を計算した列(C列)を使って、平均年齢と中央値を出してみましょう。

平均年齢:=AVERAGE(C2:C11)

中央値:=MEDIAN(C2:C11)

AVERAGE関数を使った平均年齢の結果
MEDIAN関数を使った中央値の出し方

ステップ3:退職者が出た場合のデータ更新方法と注意点

すもリーマン
すもリーマン

退職者が出た場合、その都度データを更新しないと正確な年齢構成を把握できなくなるんだよね。

そんなときのためにここでは、退職者が出た場合のデータ管理方法と、年齢計算に役立つちょっとした工夫をご紹介します。

退職者のデータを削除するだけではNG!

単純に退職者の行を削除してしまうと、過去のデータが失われてしまいます。履歴として残しておきたい場合や、後で復帰する可能性がある場合など、行を削除するのではなく「退職日」列を追加するのがおすすめです。

【退職者データを含んだデータ例】

今回は、佐藤さんと中村さんが退職済みと仮定して進めます。

氏名生年月日年齢退職日
山田 太郎1985/5/140
佐藤 花子1990/9/15342025/7/31
鈴木 次郎1995/2/2030
田中 美香1980/11/1044
高橋 健太1992/7/533
渡辺 裕子1978/10/2246
小林 健司1998/3/327
伊藤 恵美2000/1/1525
中村 誠1982/8/8432025/8/1
加藤 涼子1994/6/1831
退職者を含む社員一覧表

退職者を除外して平均年齢・中央値を計算する方法

退職者を除外した現在の社員だけの平均年齢・中央値を計算するには、AVERAGEIF関数MEDIAN関数フィルタ機能を組み合わせる方法があります。

1. AVERAGEIF関数で退職者を除外する

AVERAGEIF関数は、特定の条件に一致するセルだけの平均値を計算できる便利な関数です。

  • 書式: =AVERAGEIF(条件範囲, 条件, 平均対象範囲)
  • 今回の入力例: =AVERAGEIF(D2:D11, “”, C2:C11)

この式は「D列(退職日)が空白(””)の行だけを対象に、C列(年齢)の平均を計算する」という意味です。

AVERAGEIF関数を使って平均年齢を算出

2.MEDIAN関数とIF関数を組み合わせて中央値を計算する

MEDIAN関数にはAVERAGEIFのような条件指定機能がないため、IF関数と組み合わせ、さらに「配列数式」として入力する必要があります。

  • 書式: {=MEDIAN(IF(条件範囲=””, 中央値対象範囲))}
  • 今回の入力例: =MEDIAN(IF(D2:D11=””, C2:C11))

この数式は、以下の手順で入力します。

  1. 中央値を表示したいセルに数式を入力します。
  2. 数式を入力したら、Ctrl + Shift + Enterを同時に押します。

重要なポイント

  • 通常のEnterキーではなく、Ctrl + Shift + Enterを押すことで、数式が中括弧{}で囲まれ、配列数式として認識されます。
  • この配列数式は、「D列が空白」という条件を満たしたC列のデータだけを抜き出して、その中央値を計算してくれます。

退職者がいる場合の中央値の出し方

すもリーマン
すもリーマン

この方法なら、退職者データが追加されても、数式の範囲(D2:D11やC2:C11)を調整するだけで、常に最新の在籍社員の中央値を自動で算出できるね!


まとめ

でんちゃん
でんちゃん

今回は、エクセルで社員の平均年齢と中央値を計算する方法に加えて、退職者が出た場合の対応方法をご紹介しました。

これらの関数と管理方法をマスターすれば、手間をかけずに会社の年齢構成を常に最新の状態で把握できます。ぜひ、業務に活かしてみてくださいね。

コメント

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