エクセルで生年月日から今日の年齢を計算する方法

エクセルDATEDIF関数で、生年月日から今日の年齢を計算する方法を紹介していますエクセルで名簿や住所録などを作成したい時、年齢を表示したいという事があります。今日の年齢を、生年月日から1つ1つ計算して入力するのは大変です。データの量が多いと、大変な時間と手間がかかります。エクセルDATEDIF関数を使うと簡単に、生年月日から今日の年齢を計算して、表示させることができます。

 

 

DATEDIF関数

2つの日付の間の年数、月数、日数を計算します。DATEDIF関数は、年齢を計算する場合に便利な関数です。

エクセルDATEDIF関数は、関数ウィザードの関数名一覧にありません。手入力しましょう。

DATEDIF関数の書式と引数

DATEDIF(開始日,終了日,単位)

開始日 期間の最初の日付または開始日。日付は引用符で囲みます(例: “2001/1/1”)
終了日 期間の最後の日付または終了日。
単位 返される情報の種類を指定。

 

 

生年月日から今日の年齢を計算する方法

今日の日付を「2018/1/5」、1900年を基準とした日付方式で計算します。今日の日付を、E2に入力しましょう。

下の表を使って、説明していきます。終了日に2つのパターンを指定して、生年月日から今日の年齢を出してみましょう。

①セル参照を指定

②TODAY関数を使用

 

終了日にセル参照を指定

C2に、セル「E2」を参照して、生年月日から今日の年齢を計算する式を、入力しましょう。

C2 =DATEDIF(B2,$E$2,”Y”)

「45」を返します。

C2の式をドラッグして、下にコピーしましょう。

年齢が表示されました!

終了日にTODAY関数を使用

D2に、TODAY関数を使用して、生年月日から今日の年齢を計算する式を入力します。

D2 =DATEDIF(B2,TODAY(),”Y”)

「45」を返します。

D2の式をドラッグして、下にコピーしましょう。

年齢が表示されました!

DATEDIF関数の単位

単位 戻り値
 “Y” 期間の年数
 “M” 期間の月数
 “D” 期間の日数
 “MD” 開始日から終了日までの日数。 日付の月数および年数は無視されます制限があるため、”MD” 引数の使用はお勧めしません。
 “YM” 開始日から終了日までの月数。 日付の日数および年数は無視されます。
 “YD” 開始日から終了日までの日数。 日付の年数は無視されます。

 

こちらの記事もご覧ください。⇒エクセルで生年月日から年齢を計算して年、月、日で表示する方法

 

TODAY関数では生年月日から今日の年齢は出せない

生年月日から今日の年齢をだすには、TODAY関数を使って、今日の日付から生年月日を差し引けば、今日の年齢が計算できる!

理屈からいうと、その計算で今日の年齢がだせるはずなのですが、TODAY関数を使うと、正確な年齢を返してくれない場合があります。

下の表で、具体的に説明していきましょう。

 

今日の日付を「2018/2/1」、 1900年を基準とした日付方式で計算してみましょう。

今日の日付から生年月日を差し引くと、年齢が計算されます。

B2に、今日の日付から生年月日を引いた式を入力します。

B2 =TODAY()-A2

B2の式を、「B3:B10」にコピーします。

今日の日付から生年月日までの期間が計算されました!

次に、分かりやすいように、C列に、B列で計算した期間を、年齢で表示させましょう。

C2に、B2と同じ式、今日の日付から生年月日を引いた式を入力します。

C2 =TODAY()-A2

C2の式を、「C3:C10」にコピーしましょう。

ここまでは「B2:B10」の式と同じです。

「C2:C10」を選択して、右クリック→「セルの書式設定(F)」を選択します。

「表示形式」の分類(C)から、「ユーザー定義」を選択します。

種類(T) に「yy」と直接入力しましょう。

「C2:C10」に、年齢が表示されました!

表の「C4」を見てみましょう。

今日の日付は「2018/1/5」なので、「28」と計算されていないといけないのですが、結果は、「27」となっています。日にちもずれています。

表の「C6」をみると「02」となっています。

年齢が100歳を超えた場合、3桁を表示させることができません。C7も「00」となっています。

「B10」「C10」を見てみましょう。

生年月日が1900年以前の場合は、エラーになります。1900年を基準として計算しているので、生年月日が1900年以前だと計算できないのです。

このように「=TODAY()-生年月日」で年齢を計算すると、正しい計算結果は得られません。

年齢を計算するときは、エクセルDATEDIF関数で、生年月日から今日の年齢を計算しましょう。

こちらの記事もご覧ください。⇒エクセルDATEDIF関数を使わずに生年月日から年齢を計算する方法

 

エクセルDATEDIF関数を正しく使う前の確認

① エクセルの日付方式を確認しましょう。

   エクセルでは、2つの異なる日付方式があります。

   1900年を基準とした日付方式と 1904年を基準とした日付方式です。

   ブックの日付方式を統一しないと、ブック間で違った結果になります。

   ブックの日付方式を統一しましょう。

② パソコンの内蔵時計を確認しましょう

   エクセルでの時間や日付の計算は、パソコンの内蔵時計を基準にしています。

   パソコンの時計の変更は、ディスプレイ右下の時計からできます。

   表示されている時間をダブルクリックしてみましょう。

   でてきた時計とカレンダーを見て、現在の日時になっているか確認をしてみましょう。

   あっていない場合は、でてきた「日付と時刻」の「日付と時刻の変更(D)」をクリックします。

   「日付と時刻の設定」から日付と時間を変更しましょう。

年齢を計算するときは、エクセルDATEDIF関数を使いましょう

年齢を計算するには「=TODAY()-生年月日」の方法もありますが、この方法で年齢を計算すると正しい計算結果は得られません。年齢を計算するときは、エクセルDATEDIF関数で、生年月日から今日の年齢を計算しましょう。

こちらの記事もご覧ください。⇒エクセルで年齢を基準日の時点で計算する方法!和暦の生年月日でも計算できる