Excelで社員名簿や顧客リストなどを管理していると、生年月日から年齢を計算したい場面がよくあります。
しかし、大量のデータを一つ一つ手計算するのは手間がかかり、ミスの原因にもなります。
そのようなときに便利なのが、ExcelのDATEDIF関数を使った年齢の自動計算です。DATEDIF関数を利用すれば、生年月日から現在の年齢を自動で算出することができ、大量のデータでも簡単に年齢を求めることができます。
この記事では、ExcelのDATEDIF関数を使って生年月日から年齢を計算する方法を、初心者にも分かりやすく解説します。
社員名簿や顧客データの管理を効率化したい方は、ぜひ参考にしてみてください。
この記事を読みことで得られるメリット
ExcelでDATEDIF関数を使って、生年月日から年齢を計算する方法がわかります。
DATEDIF関数の構文
DATEDIF関数の書式は以下の通りです。
DATEDIF関数は、入力候補や関数の挿入ダイアログボックスに表示されません。
年齢を計算する方法
具体的な例で年齢を計算する方法を紹介します。
年齢を表示するセルに、
=DATEDIF(
と入力します。(①)

生年月日のセルをクリックします。今回の例ではセル「C4」をクリックします。(②)

カンマ「,」を入力します。(③)

満年齢を計算したい基準日をクリックします。今回の例では、セル「D1」をクリックします。(④)
「F4」キーを押して、絶対参照「$D$1」にします。(⑤)

カンマ「,」を入力します。(⑥)

満年齢を指定してするため、「"Y"」と入力します。(⑦)
Enterキーを押します。(⑧)
計算式としては、
=DATEDIF(C4,$D$1,"Y")
になります。

これで最初の人の年齢を求めることができたので、他のセルにオートフィルで反映します。

これで年齢を計算することができました。

よくある質問 (FAQ)
Q1: DATEDIF関数の基本的な使い方を教えてください。
A1: DATEDIF関数は「=DATEDIF(開始日, 終了日, "単位")」という書式で使用します。生年月日から年齢を求める場合は、「開始日」に生年月日を、「終了日」に今日の日付(=TODAY())を指定し、「単位」に"Y"(年)を指定します。
Q2: DATEDIF関数がエラーになる場合の対処法は?
A2: DATEDIF関数がエラーになる原因として、開始日が終了日より後に設定されている場合があります。この場合は開始日と終了日を確認し、正しい順序に修正してください。また、関数の書式が間違っていないかも確認しましょう。
Q3: 年齢計算を自動更新する方法はありますか?
A3: DATEDIF関数でTODAY()関数を使うと、シートを開くたびに年齢が自動的に更新されます。これにより最新の年齢が自動計算されるようになります。
Q4: DATEDIF関数で月数や日数も計算できますか?
A4: はい、DATEDIF関数で"M"(月数)や"D"(日数)を指定すると、年齢だけでなく生年月日からの経過月や経過日も計算できます。
Q5: 年齢を計算したセルを別のシートで参照するにはどうすればいいですか?
A5: 年齢を計算したセルの値を別のシートで表示したい場合、そのセルの参照先を指定すれば表示できます。例えば、「=Sheet1!A1」のように入力して参照します。
Q6: 生年月日が空白の場合、エラーが出ないようにする方法はありますか?
A6: できます。IF関数を使って、セルが空白のときには空白を表示するようにするとエラーを防げます。例えば、=IF(A1="","",DATEDIF(A1,TODAY(),"Y"))と設定することで、生年月日が入力されていないセルは空白のままにできます。
まとめ
DATEDIF関数を使えば、Excelで生年月日から年齢を簡単に自動計算することができます。
この関数は、人事データの管理や顧客データの分析、名簿管理など、年齢を扱うさまざまな場面で活用できる便利な関数です。生年月日を入力しておくだけで、年齢を自動的に計算できるため、手作業による計算ミスを防ぐことにもつながります。
今回の例では、基準日をセル参照で指定する方法を紹介しましたが、現在の年齢を計算する場合は次のようにTODAY関数を組み合わせる方法もあります。
=DATEDIF(C4,TODAY(),"Y")
この数式を使うと、今日の日付を基準にした最新の年齢を自動で計算することができます。
なお、DATEDIF関数はExcelの公式関数一覧には表示されない「関数」のため、入力候補や関数の挿入ダイアログには表示されません。そのため、使用する際は関数名を直接入力する必要があります。
ぜひExcelのDATEDIF関数を活用して、生年月日から年齢を自動計算し、データ管理を効率化してみてください。

