いまさら聞けないExcelの使い方講座

【Excel関数】名簿表の年齢を毎年更新するのは面倒! 生年月日から自動計算するエクセル関数テク

 Excel(エクセル)は、仕事や普段の生活で使う機会の多い、最も身近なアプリケーションのひとつです。しかし、「イマイチよくわからないまま使っている」「実は少し苦手……」という人も多いのではないでしょうか? この連載では、いまさら人に聞けないけど、知っていれば必ず役に立つ、Excelを使いこなすためのノウハウを紹介します。

年齢や勤続年数を毎年計算し直すのは面倒

 名簿によく入力されるデータの中には、年齢や勤続年数のように値が毎年変わるものがありますが、これらを毎年計算し直すのは面倒ですよね。名簿に登録されている人数が多いと、本当に大変です。

 そこで今回は、関数を使って生年月日から年齢を自動で計算する方法を解説します。

年齢の計算には「DATEDIF」関数

 会員名簿に入力された生年月日から年齢を求める例で考えてみましょう。

 まず、D列に生年月日が入力されています(①)。

 「何月何日現在」といったように年齢を計算するときの基準となる日付(②)をセルF1に入力します。

 いよいよセルE3に年齢を計算する数式を入力していきます。年齢の計算には「DATEDIF」関数を使います。

 DATEDIF関数は、「=DATEDIF(期間の開始日,期間の終了日,"単位")」という書式で入力します。

 「期間の開始日」はD列に入力されている生年月日、「期間の終了日」はセルF1に入力されている基準の日付で、この2つの日付から期間(年齢)が計算されます。「単位」は「年」「月」「日」などを、決められた形式で指定します(単位についてはあとで詳しく説明します)。

 まず、セルE3に半角で「=DATEDIF(」(③)と入力します。しばらく[Enter]キーは押さずに入力を続けていきます。

 次に、期間の開始日を入力します。期間の開始日である生年月日が入力されているセルD3をクリックすると、数式に自動で「D3」と追加されます。

 「D3」の直後に「,」(カンマ)を入力します。そのあと、同様にして期間の終了日を入力します。期間の終了日はセルF1に入力した日付になるので、セルF1をクリックします(⑥)。先ほどと同様に、数式に「F1」(⑦)が追加されます。

 ここで数式にひと工夫します。どのセルでも、期間の終了日として参照するセルは必ずセルF1です。セルをコピーしたときに参照されるセルが勝手にずれないように、参照するセルを固定しましょう。

 そのためには、数式バーに表示されている数式の「F1」の部分を、「$F$1」(⑧)に修正します。

 参照したいセルを固定したいときには列番号や行番号の前に「$」を入力します。このようにしてセルを参照することを「絶対参照」といいます。逆に、セルの位置によって参照されるセルが変わるようにセルを参照することを「相対参照」といいます。

 最後に、単位を指定します。DATEDIF関数の単位の指定方法は、次のように決められています。

  • "Y" ……満年数
  • "M" ……満月数
  • "D" ……満日数
  • "MD" ……1カ月未満の日数
  • "YM" ……1年未満の月数
  • "YD" ……1年未満の日数

 今回の名簿表で求められる年齢は満年数です。先ほどの数式に続けて「,"Y")」(⑨)と入力します。

 数式の入力が完了したので、[Enter]キーを押します(⑩)。

 セルE3に、期間の開始日から終了日までの満年数、つまり年齢(⑪)が表示されました。

数式を他のセルにコピーする

 年齢が表示されているセルE3をクリックし、セルの右下のフィルハンドル(■)にマウスポインターを合わせると、マウスポインターの形が十字に変わります(①)。

 十字のマウスポインターをセルE30までドラッグします(②)。

 E列のセルに年齢が表示されました(③)。

 E列のすべてのセルで期間の終了日としてセルF1が参照されているので、セルF1の日付を変更すると、自動でE列すべてのセルに表示される年齢を変更できます。

DATEDIF関数を使えば年齢の計算も簡単

 今回は、DATEDIF関数を使って生年月日から年齢を計算するテクニックを紹介しました。年齢の他にも、契約年月日から契約年数を計算するときや、入社年月日から勤続年数を計算するときなど、いろいろな場面で応用できます。

  関数を使った数式の入力は、最初少し難しいと感じることがあるかも知れませんが、慣れれば作業の効率がぐんとアップします。本連載ではこれからもさまざまな関数を紹介していく予定ですので、今後とも業務に役立ててください。