2011年11月11日

Excel 年齢や年数を計算したい…しかも自動で(^^)

添付画像のような表を使っている人がいて、毎年、経験年数を入力しなおすということをやっていたとか。

「何かいい方法ない?」と相談を受けたので考えてみました。

必要な条件は
①Excelで期間を計算する計算式(関数)
②計算期間の終了日を現在の日付にする
の2点ですよね。


期間を計算するには、DATEDIF 関数を使用します。
これは、ある日からある日までの期間を、指定された単位で計算する関数です。


計算式
=DATEDIF(開始日,終了日,単位)

今回は、免許の交付年月日から現在までの期間を、年数で計算するわけですから、例でいえば


=DATEDIF(R6,S6,"Y")


となります。


さらに、終了日を本日の日付にしたいのであるから、終了日欄にNOW関数を入れます。


計算式
=NOW() または =TODAY

でも、これだとどこかのセルが必要となりますよね?
そこで、このように式へ埋め込んでしまいます。


=datedif(A4,today(),"y")



これで、常に本日までの日数を計算してくれますね(^^)




ただ、このままだと、開始日が入っていない空欄の行が出た場合、変な数値が入ってしまうんですよね。
みっちりデータが入るのならいいのですが、そうでない場合もあるので・・・
そこで空欄の場合は、非表示となるようif式を入れます。



=IF(L5="","",DATEDIF(L5,TODAY(),"Y"))





ちなみに指定した期間のうち、表示したいものに応じて次のように入力します。
年数(満年数)は、"Y"
月数(満月数)は、"M"
日数(満日数)は、"D"


では、何年何か月って時はどうしたらいいの?
新たな人が入った時のために、余分な入力欄を用意しておきたいけど、式を入れると数値が表示されてしまうのなんとかならない?
そんな方はその2へどうぞ
Excel 名簿 年齢・経験年数などを自動計算する方法 その2

メニューへ戻る






同じカテゴリー(Excel)の記事画像
Excel 名簿 年齢・経験年数などを自動計算する方法
Excel 日付に曜日をつけるには
結合されたセルでのオートフィルの仕方
スプレッドシート アートで新年ごあいさつ
Excel 行列を入れ替える
横方向に続くExcelのデータを、並び替えする方法
同じカテゴリー(Excel)の記事
 Excel 名簿 年齢・経験年数などを自動計算する方法 (2015-01-15 06:02)
 Excel 日付に曜日をつけるには (2012-04-24 11:04)
 結合されたセルでのオートフィルの仕方 (2012-02-03 18:53)
 Excel2007 オプションはどこに行った? (2009-07-04 19:24)
 スプレッドシート アートで新年ごあいさつ (2009-01-02 06:59)
 Excel 行列を入れ替える (2008-12-10 09:59)

Posted by kenpyon at 18:41 │Comments( 0 ) Excel
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。