• ベストアンサー

時間の経過を表示させるには

現在会社では人事部に所属しています。 エクセルの操作方法についての質問です。 社員の社歴一覧表を作成するのですが、社員の名前の横の欄に入社年月日の「平成5年4月1日」を入力すれば、その横の欄に在籍年数を自動的に表示させるにはどうすればよいでしょうか?

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

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

実際に書類を作る事を想定してお答えします。 たぶんTODAY関数で日付を表示しますよね? ここでは[A1]にTODAYで日付表示をしているとします。 そして[B3]に入社年月日が入力されてるとしましょう。 年月日を表示させる時、ひとつのセルで同時には出来ないので、 年数を表示した隣のセルに月数、日数を順に表示させます。 年数→「=IF(B3="","",DATEDIF(B3,$A$1,"y")&"年")」 月数→「=IF(B3="","",DATEDIF(B3,$A$1,"ym")&"ヶ月") 日数→「=IF(B3="","",DATEDIF(B3,$A$1,"md")&"日") 最後の部分の「&"年"」が無いと表示結果は数字だけですが、 こうすると「○○年」と表示してくれます。(月、日の方も同様です) またNo.2の回答ではNOW関数を使ってましたが、 ここではシート上の今日の日付を利用するようにしました。 引数の「$A$1」の部分はTODAY関数かNOW関数を使ってもできます。

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

その他の回答 (2)

回答No.2

No.1さんの考え方でよいと思います。 でもA列が空欄だった場合、とんでもない年数になりますので、 もう一つIFをかぶせてあげると良いかもしれません。 「=IF(A1="","",DATEDIF(A1,NOW(),"y"))」

dela
質問者

お礼

ありがとうございます。 では、年数に何ヶ月何日もプラスしたいのですが どうすれば出来るのでしょうか?

すると、全ての回答が全文表示されます。
  • iiikkk
  • ベストアンサー率37% (92/247)
回答No.1

A1セルに 「平成5年4月1日」と入れたとして、 B1セルに 「=DATEDIF(A1,NOW(),"Y")」 これでどうでしょうか。

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

関連するQ&A