• 締切済み

エクセルの計算式

エクセルにて生年月日と入社年月日を入力し、60歳到達時(誕生日の前日)までの勤続年数を計算する方法はありますでしょうか? 例)22歳で入社→勤続年数38年間   45歳で入社→勤続年数15年間 年齢と現在までの勤続年数はそれぞれ分かるので、手計算で一件づつ行えばわかるのですが、エクセルでもできますでしょうか?  宜しくお願い致します。

みんなの回答

  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.3

すでに説明がされていますが、けっこう面倒です 正確に導き出す方法としては、まず満60歳に達する前日の日付を求める必要があります 生年月日から year関数で 年だけを取り出し、60を加える その数値と、生年月日から month関数、day関数で、月と日を別々に取り出し 日付を示す文字列を作ります  YEAR(生年月日)+60&"/"&MONTH(生年月日)&"/"&DAY(生年月日) 誕生日の前日にするため、これをシリアル値に直して 1 を減算します  DATEVALUE(YEAR(生年月日)+60&"/"&MONTH(生年月日)&"/"&DAY(生年月日))-1 これでOK そして、勤続年数を計算するために特殊な関数を使います  DATEDIF(60歳前日年月日,入社年月日,"Y") DATEIF関数については、ヘルプを参照するかインターネット上を検索してください  最後の "Y" が勤続年数の年を示すオプションです 面倒ですが、参考になれば幸いです

  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.2

#1です。追記です。単純に「端数切捨て」でいいなら、 生年月日を「A1」 入社年月日を「A2」 定年を「60」とした場合 =YEAR(A1)+60-YEAR(A2) これで勤続年数が出てきますが、これだけじゃダメでしょ?という話です。 条件による端数処理が山ほど出てくるはずですから。

  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.1

(生年月日+定年)-入社年月日 Excelは年月日を1900年1月1日を1にした連続の数値で管理して いますので、単純な引き算で勤続年数が出てきますよ。 ただ、勤続年数の計算は単純に端数を切り捨てればいい、という 問題じゃない場合があります。例えば2/29入社の場合の勤続1年は 何月何日にするんだ、というような「例外処理」が山ほどあること が普通なので、これらの細かい規定を100%理解して数式に出来るので ない限り、素直に手計算のほうが融通が利いて正確で速いですよ。

関連するQ&A