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

エクセルで会社の従業員の勤続年数とその平均を求めたいです。
勤続年数のセルに
=DATEDIF(A1,TODAY(),"y")&"年"&DATEDIF(A1,TODAY(),"ym")&"ケ月"
といれて勤続年数を出してます。
それで次に従業員の勤続年数の平均を出したいのですが、AVERAGEを使うとエラー#DIV/0!が出ます。
どうすれば勤続年数とその平均が求められますか?
どんな方法でも良いので教えて下さい!!非常に困ってます(ー_ー)!!

A 回答 (3件)

そりゃそうでしょう。

計算対象が文字列扱いのデータなんですから、
エラーが出てアタリマエ、平均値が計算できワケがないです。

ですので、勤続年数の「数値」を持つセルを別に作る必要があります。
当然年/月のままじゃダメで勤続延べ何ヶ月という「月」の値にする
必要があります。ということで、上記のセルとは別に、

=DATEDIF(A1,TODAY(),"y")*12+DATEDIF(A1,TODAY(),"ym")

こうすれば、勤続延べ何ヶ月の数字が出てきます。この式を含むセル
についてAVARAGE関数で平均を取ってください。

で、出てくるのは勤続延べ何ヶ月ですから、こいつを12で割って「年」
余りを「月」にする必要があります。平均月が出たセルをB1として、

="平均"&INT(B1/12)&"年"&(B1-INT(B1/12)*12)&"ケ月"

こんな感じで表示できるはずです。
キモは「計算に使うセルと表示するセルを分ける」ということです。

計算に使うセルが表示上邪魔な場合は「書式」「列」「表示しない」
などで表示上隠す方法と、AA1~などの極端に離れたセルに記入して
おく方法などがあります。
    • good
    • 14
この回答へのお礼

ありがとうございました。参考になりました!!

お礼日時:2007/03/30 13:35

AVERAGE関数は、数値しか扱わないので


範囲に数値がないと#DIV/0!が返ります。

平均勤続年数は、下記の数式で如何でしょう。
(入社年月日がA列に入力されているとします。)
=DATEDIF(AVERAGE(A:A),TODAY(),"y")&"年"&DATEDIF(AVERAGE(A:A),TODAY(),"ym")&"ケ月"
    • good
    • 36
この回答へのお礼

ありがとうございました。参考になりました!!

お礼日時:2007/03/30 13:35

> AVERAGEを使うとエラー#DIV/0!が出ます。



どう設定したのですか? 数件でいいので例示を。普通そんなエラー出ません。
    • good
    • 15

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A