• ベストアンサー

エクセルで在籍年数を詳しく出すには

エクセルで社員管理で在籍年数を詳しく出したいのですが、 =DATEDIF(F2,TODAY(),"Y")  で年数を出していますが、何年何ヶ月まで出すにはどうすればいいのですか?? 教えてください。

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

  • ベストアンサー
  • BCT
  • ベストアンサー率37% (26/69)
回答No.4

[A1]セルと現在の日にちを比較するとして、 下の式のようにしてはどうでしょうか? [年数] = DATEDIF(A1, TODAY(), "Y")  [月数] = DATEDIF(A1, TODAY(), "M") -( [年数] * 12 )

すると、全ての回答が全文表示されます。

その他の回答 (7)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.8

=INT(DATEDIF(A5,B5,"m") /12)& "年" & MOD(DATEDIF(A5,B5,"m"),12)&"月" A5に2000/11/5,B5に=today()としてテスト。C5に 2年0月となりました。 質問に沿えばB5は=today()となります。

すると、全ての回答が全文表示されます。
回答No.7

下記の方々との違いは、関数をなるべく同じものを使った方が、後任の方がエクセルの関数が苦手でも調べやすいかなぁと思ったんです。 なるべく1つのセルで完結するのであれば前述の皆さんの方が良いと思います。

すると、全ての回答が全文表示されます。
  • laputart
  • ベストアンサー率34% (288/843)
回答No.6

分けて書きます。 例えば f2 に 1998/12/25 f3 に 2002/12/24 が入っているとして 最初にf2 と f3 の期間を月として求めます。 f4 を =DATEDIF(F2,F3,"m") とすると47となります。47ヶ月という意味 f4を年と月に分けます。 f5 年を求めるには =INT(f4/12) <---端数切り捨て f6 残り月を求めるには =mod(f4/12) <---余りを求める 値が f5 が 3(年) f6が 11(月)になることを 確認してください。 もちろん上記を合わせて関数とすることも可能です。

すると、全ての回答が全文表示されます。
回答No.5

こんなのは如何でしょうか? セルA1に入社年月を入力 入力値:1995/10(1995年10月に入社の場合) セルB1で入社経過年数を計算 式:=INT(DATEDIF(A1,TODAY(),"M")/12) セルC3で残りの入社経過月を計算 式:=DATEDIF(A1,TODAY(),"M")-(B1*12) ソート(並び替え)する場合は、列B(経過年)を最優先キーにして、次に列C(経過月)をキーにすると良いと思います。 意図と違う様であれば、またご質問してください。 たぶんイイトコついてると思うんですが。

すると、全ての回答が全文表示されます。
noname#9485
noname#9485
回答No.3

#1です。再びお邪魔します。 一つのセルに表示するなら =DATEDIF(F2,TODAY(),"Y")&"年"&DATEDIF(F2,TODAY(),"YM")&"ヶ月" とすると、10年3ヶ月という風に表示できます。

chizup
質問者

お礼

ありがとうございました.完璧でした。ペーストして使ってしまいました.(ペコリ)

すると、全ての回答が全文表示されます。
  • jein
  • ベストアンサー率49% (2799/5705)
回答No.2

A1に入社年月日、B1に退社年月日とすると =DATEDIF(DATE(YEAR(A1),MONTH(A1),1),(DATE(YEAR(B1),MONTH(B1)+1,1)),"y")&"年"&DATEDIF(DATE(YEAR(A1),MONTH(A1),1),(DATE(YEAR(B1),(MONTH(B1)+1),1)),"YM")&"ヶ月" これで良いとおもいます

すると、全ての回答が全文表示されます。
noname#9485
noname#9485
回答No.1

何ヶ月と表示セルに =DATEDIF(F2,TODAY(),"YM")としてください。 "Y"・・・年 "M"・・・月 "D"・・・日 "YM"・・・1年に満たない月数 "MD"・・・1月に満たない日数 "YD"・・・1年に満たない日数 単位の部分で指定が出来ます。

すると、全ての回答が全文表示されます。

関連するQ&A