【Excel】年齢を自動計算したい。生年月日と基準日を元に毎年変わる年齢をDATEDIF関数で自動計算する方法

高齢者のためのエクセル教室
高齢者のためのエクセル教室
この記事は約4分で読めます。
スポンサーリンク

Excelにはたくさんの関数がありますが、Excelの関数一覧には表示されない「DATEDIF」という関数があります。この関数を使うと開始日から終了日までの差を計算し、計算結果を年数・月数・日数で表示させることができます。

今回は開始日から終了日までの差を計算し、結果を年数・月数・日数で表すことができる「DATEDIF」関数を使って、誕生日を元に年齢を計算してみたいと思います。

スポンサーリンク

関数の一覧に「DATEDIF」がない?!

関数と言えば、関数の挿入ボタンなどから関数の一覧を表示→使いたい関数を選択し引数を入力していくというのが一般的な流れになりますが、関数の一覧を見てもDATEDIF関数はありません。

関数の一覧になくてもDATEDIF関数は使うことができますが、他の関数のように引数を指定する画面が表示されないので分かりづらいかもしれません。

スポンサーリンク

生年月日と基準日を元に年齢を「DATEDIF」関数を使って自動計算してみよう

まず、下の画像のように、年齢を求めるために必要な生年月日を入力したセルと基準値となる日が入った表を作成します。

計算式を入力するときは日本語入力モードをオフにしておきましょう。

DATEDIF関数の引数「開始日」を指定しよう

Aさんの年齢を入力したいセル(C3セル)をクリックした状態で、キーボードを使って

=datedif(

と入力します。

次にAさんの誕生日が入っているセルにマウスポインタを合わせてクリックしてからキーボードの,(カンマ)キーを押します。

これでDATEDIF関数に必要な「開始日」、つまり生年月日が指定できました。

DATEDIF関数の引数「終了日」を指定しよう

次に、今日の日付が入力されているC1セルをクリックし、キーボードのF4キーを押したあと、,(カンマ)キーを押します。

これでDATEDIF関数に必要な「終了日」、基準値となる日が指定できました。

キーボードのF4キーを押した理由については後ほど書きます。

DATEDIF関数の引数の最後は結果をどう表すかを指定する

上の開始日と終了日を設定したことで差を求めることはできました。最後に、その差を年数で表すためにキーボードを使って以下のように(太い赤字になっている部分)入力します。

=DATEDIF(B3,$C$1,“y”)

キーボードのEnterキーを押して関数を確定させましょう。

Aさんの年齢が計算されているのを確認できましたでしょうか?

計算式の入力中、キーボードの「F4」キーを押したのは、絶対参照を使って計算式をコピーしたかったから

BさんとCさんの年齢を計算したいのですが、もう一度計算式を入力せずに計算式をコピーしてふたりの年齢を計算してみましょう。

計算式が入っているAさんの年齢が入ったセルを選択した状態で右角下にある■にマウスポインタを合わせて下方向へドラッグすれば計算式をコピーすることができます。

BさんとCさんの年齢の年齢も計算できましたね。

絶対参照については【Excel】全体の何割かを計算する 「割合」の求め方で開設しています。

実は、Aさんの年齢を求めた後、BさんとCさんの年齢を計算するために計算式をコピーしましたが、上で説明した「絶対参照」を使わずに計算式をコピーしてしまうと以下の画像のような結果になってしまいます。

Aさん、Bさん、Cさんの生年月日を入力したセルはそれぞれ別のセルになりますので、参照を固定する必要はありませんが、今日の日付は3人それぞれの年齢を求めるときには終了日としてずっと同じセルを参照し続けることで計算式のコピーがうまくいくのです。

DATEDIF関数とは?DATEDIF関数の仕組みを見てみよう

DATEDIF関数の引数は、開始日、終了日とどう表示するか(年?月?日?)を指定します。

=DATEDIF(開始日,終了日,”年数を求めたいなら「y」”)

ちなみに、年数を求めるときはyを使いますが、月数だとm、日数だとdを使います。

今日の日付を簡単に入力したいなら、キーボードのCtrlキーを押しながらキーを押しましょう。

入力した日付を西暦にしたり和歴にしたりしたいならセルの書式設定を使ってみましょう。

Excelで何度数字を入力し直しても日付になってしまう原因と解除方法 | 高齢者のためのICT教室 (senior-ict.info)

スポンサーリンク

Excelの関数「DATEDIF」を使って年齢を計算する方法のまとめ。

「DATEDIF」関数を使えば開始日から終了日までの年数、月数、日数が計算できます。ただ、この「DATEDIF」関数は関数一覧から呼び出すことができない関数で、手入力するしかない関数です。

この開始日から終了日までの経過年数を求められることを応用すれば生年月日から今日あるいは指定した日付までの経過年数を求めることができる、つまり年齢を求めることができました。

この「DATEDIF」を使って複数の人の年齢を求めるとき、計算式をコピーする必要があるなら今日あるいは指定した日付を絶対参照で固定しておかないと、参照先がないというエラーが表示されます。

「DATEDIF」という綴りを覚えないといけない、手入力なので引数の画面が表示されない、というちょっと面倒な部分もありますが、「DATEDIF」関数という関数があるんだということを知っておけば、仕事の工程計算などにも使えるんじゃないかと思い、身近な年齢を求める例を使ってご紹介しました。

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