目次
Excelで特定の日付から年齢計算を行う方法が分からない、という方も多いのではないだろうか。年齢計算を行うには、DATEIF関数を使う必要がある。
本記事ではDATEIF関数で年齢計算を行う方法について解説する。また、年齢計算だけでなく、DATEIF関数で経過日数を求める方法についてもまとめた。
DATEDIF関数とは?
DATEIF関数は、指定した期間の「日付の長さ」を求める関数だ。DATEIF関数の書式は次のとおり。
書式 : =DATEDIF({開始日},{終了日},{求めたい単位})
開始日は終了日を指定することで、その差分を求めることができる。そして「求めたい単位」には、年・月・日のいずれかをイニシャルで指定する。
- Y:期間内の年数
- M:期間内の月数
- D:期間内の日数
たとえば、開始日を1/1、終了日を1/15、求めたい単位を「D」にすることで、「1/1から1/1までで何日経過したか」を求めることができる。
また、開始日を1/1、終了日を2/15、求めたい単位を「M」にすることで、「1/1から1/1までで何ヶ月経過したか」を求めることができる。
このDATEIF関数を使うことで、年齢計算を行うことも可能だ。現在の日付とその人の誕生日が分かれば、「何年経過したか」を求めることができる。
ExcelでDATEDIF関数を使って年齢計算を行う方法
それでは、ExcelでDATEIF関数を使って年齢計算を行う方法をみていこう。年齢計算を行う手順は次のとおり。
- 誕生日が記載された表を作成する
- 現在の日付を記入する
- 年齢計算を行う
- 他のデータにも反映させられるようにする
1つ1つの手順について詳しく解説していく。
1.誕生日が記載された表を作成する
まず、誕生日が記載された表を作成する。ここでは以下のような名簿リストを用意した。今からこの表の「年齢」の欄をDATEIF関数を使って埋めていく。
2.現在の日付を記入する
次に、現在の日付を求める必要がある。DATEIF関数は現在の日付と誕生日の差分を計算することで、年齢を求めているためだ。
現在の日付はTODAY関数で求めることが可能だ。
TODAY関数を使うと、以下のように現在の日付が表示される。
3.年齢計算を行う
年齢計算を行うための情報がそろったので、DATEIF関数を使っていく。
C4に「=DATEDIF(B4,E2,”Y”)」と記入してみよう。これは、「B4(1992-04-07)からE2(2024-05-13)まで何年経っているか」という意味である。
実行すると「32」と表示され、問題なく年齢計算できていると分かる。
4.他のデータにも反映させられるようにする
続いて、この関数を他の行にも反映できるようにしたい。だが、そのままドラッグアンドドロップすると、正しい値が表示されなくなる。これは、ドラッグアンドドロップすることで、DATEIF関数の終了日まで、変化してしまうためだ。
終了日を変更させないためには、絶対対象にする必要がある。冒頭に「$」を付けることで絶対参照に変更できる。
「=DATEDIF(B4,$E$2,”Y”)」に変更した後、ドラッグアンドドロップする。すると、次のように正常な情報が表示される。
DATEDIF関数で経過日数を求める方法
続いて、DATEIF関数で経過日数を求める方法を解説する。経過日数を求める手順は次のとおり。
- 入会日が記載された表を作成する
- 経過日数を求める
- 経過日数に応じて文字列を出力する
1.入会日が記載された表を作成する
まず、入会日が書かれた名簿リストを作成する必要がある。ここでは、次のような表を用意した。右上にはさきほどと同じく、現在の日付を表示している。
2.経過日数を求める
C4のセルを選択し「=DATEDIF(B4,$E$2,”D”)」と入力する。これは「B4(2023-09-12)からE2(2024-5-13)まで何日経ったか」という意味である。
実行し、ドラッグアンドドロップして他の行にも反映させると次のようになる。問題なく経過日数を表示できていることが分かる。
3.経過日数に応じて文字列を出力する
最後に、経過日数に応じて異なる文字列を出力できるようにしてみよう。結果に応じて、異なる文字列を出力したいときは、IF関数を使う。
今からIF関数とDATEIF関数を組み合わせる。
以下のように「=IF(DATEDIF(B4,$E$2,”D”)>=50,”ゴールド会員”,”ノーマル会員”)」と入力しよう。これは、「経過日数が50以上なら『ゴールド会員』それ以外は『ノーマル会員』」と表示するようにしている。
実行すると、以下のように経過日数に合わせて、文字列が表示されていることが分かる。
まとめ
本記事ではExcelで年齢の計算を行う方法について解説した。最後に、DATEIF関数で年齢計算を行う手順についておさらいしよう。
- 誕生日が記載された表を作成する
- 現在の日付を記入する
- TODAY()
- 年齢計算を行う
- 例:=DATEDIF(B4,E2,”Y”)
- 他のデータにも反映させられるようにする
- 例:=DATEDIF(B4,$E$2,”Y”)
また、DATEIF関数の使い方もおさらいしておこう。DATEIF関数の書式は次のとおり。
書式 : =DATEDIF({開始日},{終了日},{求めたい単位})
「求めたい単位」には次の3ついずれかを指定できる。年数・月数・日数のどれを求めるのか正しく指定しないと、数が合わなくなってしまうので気をつけよう。
- Y:期間内の年数
- M:期間内の月数
- D:期間内の日数
構成/編集部