Excelで年齢を自動計算!DATEDIF関数で誕生日から一発算出する実務テクニック
顧客リストや社員名簿の年齢、毎年手作業で更新していませんか?誕生日から年齢を計算するのは地味に面倒で、ミスの原因にもなります。この記事を読めば、DATEDIF関数を使って3分で「誕生日から常に最新の年齢を自動計算する」仕組みを構築できます。
誕生日から年齢を自動計算する基本
初心者
顧客リストの年齢を毎年更新するのが本当に大変で…。誕生日から自動で今の年齢を計算する方法ってありますか?
プロ
もちろんです!そんな時に役立つのが「DATEDIF(デイトディフ)関数」です。一度設定すれば、ファイルを開くたびに今日時点の最新年齢に自動更新されるので、更新作業がゼロになりますよ。
初心者
DATEDIF…初めて聞きました。使い方は難しいですか?
プロ
ご安心ください、とてもシンプルです。基本は「開始日」「終了日」「単位」の3つを指定するだけ。年齢計算なら、=DATEDIF(誕生日セル, TODAY(), "Y")と入力します。TODAY()は今日の日付を返す関数なので、常にリアルタイムの年齢がわかる仕組みです。
5ステップで完了!年齢自動計算の手順
- 年齢を表示したいセルを選択します。(例:C2セル)
- 数式バーに
=DATEDIF(と入力します。 - 第1引数として、誕生日が入力されているセル(例:B2セル)をクリックします。
- カンマ(,)で区切り、第2引数に
TODAY()を入力します。これで計算基準が「今日」になります。 - 再度カンマで区切り、第3引数に
"Y"と入力します。これは満年数(Year)を計算するための指定です。最後に)で閉じてEnterキーを押せば完了です。
あとはセルの右下のフィルハンドルをダブルクリックすれば、リストの最後まで数式が一括でコピーされます。
コピペで使える!年齢計算の関数サンプル
B2セルに誕生日が入力されている場合のサンプルです。実務では、エラー対策版を使うとリストがより見やすくなります。
基本形:
=DATEDIF(B2, TODAY(), "Y")
エラー対策版(誕生日が空欄や未来の日付の場合に空白を表示):
=IFERROR(DATEDIF(B2, TODAY(), "Y"), "")
実務サンプル:顧客リストでの活用例
以下の表のC2セルに =IFERROR(DATEDIF(B2, TODAY(), "Y"), "") と入力し、下にコピーした例です。
| 氏名 | 生年月日 | 年齢(自動計算) |
|---|---|---|
| 田中 太郎 | 1985/4/15 | 39 |
| 鈴木 花子 | 1992/11/3 | 31 |
| 佐藤 次郎 | 2001/8/20 | 22 |
| 高橋 三郎 |
よくある落とし穴と対策
DATEDIF関数を使う上で、初心者がつまずきやすいポイントをまとめました。
| 現象・原因 | 対処法 | 一言メモ |
|---|---|---|
| #NUM! エラー 生年月日が未来の日付になっている。 |
IFERROR関数でエラーを非表示にするか、入力データ自体を修正する。 |
入力ミスを発見する良いきっかけになります。 |
| #VALUE! エラー 生年月日が日付データでなく文字列(例: H5.4.1)になっている。 |
セルの書式を「日付」に統一する。シリアル値(例: 45015)に変換する。 | Excelは見た目と内部データを区別するため、データ形式の統一は重要です。 |
| 関数候補に出ない DATEDIFと入力しても候補一覧に表示されない。 |
これは仕様です。スペルミスに注意してDATEDIFと直接手入力してください。 |
過去の互換性のために残された隠し関数のためですが、問題なく使えます。 |
まとめ:今日から年齢管理を自動化しよう
今回のポイントを3つにまとめます。
- DATEDIF関数を使えば、誕生日から満年齢を簡単に自動計算できる。
- 基本の型は
=DATEDIF(誕生日セル, TODAY(), "Y")と覚える。 - IFERROR関数と組み合わせることで、未入力やデータミスがあってもエラー表示を防ぎ、実用性が格段に向上する。
まずは、お手元にある名簿データの横に、試しに年齢計算列を1つ追加してみましょう。その効果に驚くはずです。



コメント