• ベストアンサー

エクセルの関数で計算したい

勤続年数の計算をしています。10年の83%が何年何ヶ月何日になるのかを関数を使って計算したいのですが、思いつきません。基点日と年数と%をいれれば勤続年数が計算される式を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

10年の83%だと約3030日、8年と3ヶ月19日位かな。 うるう年があるので年数で入れるよりも実際の日にちで計算したほうが正しいし数式も楽です。 日にちの表示はセルの書式設定(セルを右クリックで出てくるセルの書式設定)の表示方法を日付にすること。 A1に起点(たとえば2007/4/1)、B1に終点(たとえば2017/3/31)として C3に%を入れるとする。%は2桁の数字とする。 D1には以下の数式を。 =A1+(B1-A1)*C1/100 これが答えの日付です。D1も日付の表示になるように設定ください。

kicw
質問者

お礼

早々に回答していただきありがとうございました! うるう年のことも気になっていたのです…助かりました。

その他の回答 (4)

noname#204879
noname#204879
回答No.5

起点日 → A2 年数  → B2 %   → C2 勤続年数: =DATEDIF(A2,A2+ROUNDUP((DATE(YEAR(A2)+B2,MONTH(A2),DAY(A2))-A2)*C2,0),"Y")&"年"&DATEDIF(A2,A2+ROUNDUP((DATE(YEAR(A2)+B2,MONTH(A2),DAY(A2))-A2)*C2,0),"YM")&"ヶ月"&DATEDIF(A2,A2+ROUNDUP((DATE(YEAR(A2)+B2,MONTH(A2),DAY(A2))-A2)*C2,0),"MD")&"日"

kicw
質問者

お礼

回答ありがとうございました!このような式が組み立てられるようになりたいのですが…なかなかたどりつきませんでした。勉強になりました!!

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.4

A1:1990/5/20 B1:3650 C1:0.83 =DATEDIF(A1,A1+(EDATE(A1,10*12)-A1)*C1,"Y")&"年"&DATEDIF(A1,A1+(EDATE(A1,10*12)-A1)*C1,"YM")&"ヶ月"&DATEDIF(A1,A1+(EDATE(A1,10*12)-A1)*C1,"MD")&"日"

kicw
質問者

お礼

回答ありがとうございました!参考にさせていただきます!!

回答No.3

うるう年を考慮せず、1年を365日とすれば10年は3650日 A1:2007/5/20 B1:3650 C1:0.83 D1:=A1+B1*C1 これでどうでしょうか。 より厳密な計算が必要なら、参考URLが役に立つかもしれません。

参考URL:
http://www.relief.jp/itnote/archives/000423.php
kicw
質問者

お礼

回答ありがとうございました!参考URLも勉強になりました。今後も参考に利用します!

noname#259419
noname#259419
回答No.2

「DATEDIF関数」を使うと、開始日から終了日までの年数や月数、日数を表示できます。 =DATEDIF("開始日","終了日","単位") 単位 "Y":開始日から終了日までの満年数 "M":開始日から終了日までの満月数 "D":開始日から終了日までの満日数 ※引数には全て " " を付けます。 例) =DATEDIF("2001/1/1","2002/2/1","D") ⇒ 396

kicw
質問者

お礼

回答ありがとうございました!参考にさせていただきます!!

関連するQ&A