エクセル 基準日までの日数や年齢を計算する方法

( ノ゚Д゚)こんばんは!こんにちは!おやすみなさい!おはようございます! とっちーです。

 

在籍期間とか基準日を設けてその間の日数を求めたりすることってありますか?

 

今回は、そんな関数をお知らせします。

 

DATEDIF関数

 

DATEDIF関数を使用することにより、期間内の年月日が求めることができます。

 

 

書式

=DATEDIF(期間開始年月日、期間終了年月日、引数)になります。

 

引数には、期間内を満たす年は”Y”、期間内を満たす月は”M”、期間内を満たす日は”D”を指定します。

その他には、期間内の「年と日は除外」した”YM”、期間内の「年は除外」した”YD”、期間内の「年と月は除外」した”MD”があります。

 

ただし、引数YDとMDは、戻り値が負の値、ゼロまたは、時により不正確な値を戻してきます。この点だけ注意です。

 

 

(はてな君)
関数の種類は?

 

(えっちゃん)
実は、DATEDIF関数はね、隠し関数なんだ。

 

(はてな君)
隠し関数?

 

(えっちゃん)
そう、昔の名残で残っている関数なんだ。

 

(はてな君)
ちゃんと動くの?

 

 

(えっちゃん)
注意書きを守ればね大丈夫みたい、今のところ

 

=DATEDIF関数は、「隠し関数」です。

 

なのでダイアログに表示される関数ではありません。しかもHELP機能もエクセル2002以降は、ありません。

ちなみに「エクセル97や2000」にはヘルプはあります。

 

使用する場合は、セルを選択し「数式」を直接入力していきます。

 

基準日における年齢計算

 

基準日現在の社員の年齢を取得する方法です。

 

上図は、➊基準日に対し、年齢勤続年数や月を求めています。

 

基準日に対し年齢を算出するには、=DATEDIF(基準日、生年月日、”Y”)で算出します。

勤続年数は入社日に対して算出しますので、=DATEDIF(基準日、入社日、”Y”)で算出します。

 

勤続月数は入社日に対して年と日を除外して算出しますので =DATE(入社日、基準日、年と日を除いた月数”ym”で算出します。

 

 

それでは上図の入社日年齢、勤続年数、勤続月の求めた式をお伝えします。

 

入社日年齢 =DATEDIF(C6,D6,”y”) C6からD6までの年数
勤続年数 =DATEDIF(D6,$G$3,”y”) D6からG3までの年数
勤続月 =DATEDIF($D6,$G$3,”ym”) D6からG3までの年と日を除いた月数

 

なお、エラー表示を無くす場合はこちらをどうぞ

 

 

入社日年齢 =IFERROR(DATEDIF(C6,D6,”y”),””)

C6からD6までの年数

もしもエラーなら空白

勤続年数 =IFERROR(DATEDIF(D6,$G$3,”y”),””)

D6からG3までの年数

もしもエラーなら空白

勤続月 =IFERROR(DATEDIF($D6,$G$3,”ym”),””)

D6からG3までの年と日を除いた月数

もしもエラーなら空白

 

まとめ

 

今回は、期間内の年数、月数を求めてみました。

年齢を調べたり、継続期間を調べたりするときにとても便利です。

 

ぜひお試しください。

 

 

楽しくエクセルをアレンジして今日も、新しい発見をしてみませんか!

自分に合ったお気に入りのスタイルでエクセルを使いこなしていきましょう。

 

ありがとうございました。