プロが教えるわが家の防犯対策術!

エクセルで経験年数を求め、○年○○月と表示したい。また、別セルに入力した期間率(100%、50%、25%)をその経験年数にかけて計算したい。

画像をご覧ください。

白いセルに手で入力すると、グレーの経験年月と、赤矢印の換算年月が自動で計算されるようにしたいのです。

1)グレーの経験年月の計算方法と表示方法(0年とか0月は表示させない)
2)赤矢印の換算年月の計算方法と表示方法(同上)

いろいろ調べて、1)の経験年数は計算できたのですが、0年とか0月が表示されてしまい邪魔なので、表示させない方法を知りたいです。

また、2)については、年数を率でかけると計算不可でダメだったので、計算方法と表示方法も併せて教えていただきたいです。

お手数ですが、どうぞよろしくお願いいたします。

「エクセルで経験年数を求め、○年○○月と表」の質問画像

A 回答 (3件)

No.2です!


補足を読ませていただきました!
エラーになっちゃいましたかぁ~~!
それは残念。

もう一度確認してみてください。
ツール → アドイン を選択すると、↓の画像の上側の画面がでると思いますが、
ちゃんと赤い部分にチェックが入っているか?

それから、数式バーの左に「fx」マークのアイコンがあると思いますので、そこを一度クリック!
「関数名」から「EDATE」を選択してみてください。画像の下側のような画面が表示され、
ちゃんと「開始日」「月」の文字が表示されているでしょうか?
もしこの文字が表示されていないと分析ツールにチェックが入っていないか、
アドインがインストールされていないことになりますので、
OfficeのCD-ROMからインストールする必要があります。
(アドインがインストールされていないと、「分析ツール」自体が表示されないかもしれません)

それらが問題ない場合は前回の数式で大丈夫だと思うのですが・・・

もう一度この画面から数式をコピー&ペーストしてみてください。
C2セルは
=IF(COUNTBLANK(A2:B2),"",IF(DATEDIF(A2,EDATE(B2,1),"m")<12,DATEDIF(A2,EDATE(B2,1),"m")&"月",IF(DATEDIF(A2,EDATE(B2,1),"ym")=0,DATEDIF(A2,EDATE(B2,1),"y")&"年",DATEDIF(A2,EDATE(B2,1),"y")&"年"&DATEDIF(A2,EDATE(B2,1),"ym")&"月")))
としてオートフィルで下へコピー!

それからE列にはEDATE関数を使わず、アドインがインストールされていなくても対応できる数式に変更してみます。

E2セルの数式を
=IF(COUNTBLANK(A2:B2),"",(DATEDIF(A2,B2,"m")+1)*D2&"月")
としてオートフィルで下へコピーしてみてください。

これでどんなでしょうか?
エラーなくできればよいのですが・・・m(__)m
「エクセルで経験年数を求め、○年○○月と表」の回答画像3
    • good
    • 0
この回答へのお礼

ありがとうございます!!出来ました!!!

これで作業が一気に捗ります。本当に感謝感謝です!!
関数はまだまだ理解できてないので、教えていただいた数式を読み取って、どのような仕組みなのかを勉強させていただきます。

本当にありがとうございました!

お礼日時:2010/10/19 09:37

こんばんは!


無理やりって感じになります。

↓の画像で説明させていただくと、

A・B列のセルの表示形式はユーザー定義から
ggge年m月 としておいて、各月の1日目のシリアル値を入力しています。
(仮にA2セルは「平成20年4月1日・または2008/4/1 と入力)
DATEDIF を使っていますので、他の日付を入力すると表示は同じ表示になりますが、
すべてをシリアル値で計算していますので、違った結果になることがあります。


C2セルに
=IF(COUNTBLANK(A2:B2),"",IF(DATEDIF(A2,EDATE(B2,1),"m")<12,DATEDIF(A2,EDATE(B2,1),"m")&"月",IF(DATEDIF(A2,EDATE(B2,1),"ym")=0,DATEDIF(A2,EDATE(B2,1),"y")&"年",DATEDIF(A2,EDATE(B2,1),"y")&"年"&DATEDIF(A2,EDATE(B2,1),"ym")&"月")))

という数式をいれオートフィルで下へコピー

E2セルは
=IF(COUNTBLANK(A2:B2),"",DATEDIF(A2,EDATE(B2,1),"m")*D2&"月")
という数式をいれ、オートフィルで下へコピーすると
画像のような感じになります。
(C列が文字列になってしまいますので、単純にD列の掛け率を掛けてもエラーになってしまいます)

尚、数式の中に「EDATE関数」を使っていますので、当方使用のExcel2003以前のバージョンですと
メニュー → ツール → アドイン → 「分析ツール」にチェックを入れておく必要があります。

以上、参考になれば良いのですが
他に良い方法があれば読み流してくださいね。m(__)m
「エクセルで経験年数を求め、○年○○月と表」の回答画像2

この回答への補足

おぉ。。ありがとうございます!!

が、どうしても#NAME?でエラーになってしまいます。
(当方2003ですので、「分析ツール」にチェックもいれました)

何か対応策がありますでしょうか・・・すみません。
お時間ありましたらよろしくお願いします。

補足日時:2010/10/18 15:42
    • good
    • 0

一般論です。



ゼロ非表示
条件付き書式
@int
さらには
@if
などで解決出来ると思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!