[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『勤続年数の平均』(とし)
考え方として、年と月を別々に計算するのではなく、 個人ごとの勤続期間を月数で計算し、それを平均してから年月に換算すればいいと思います。 (sato)
((現在年月日×人数)−(採用年月日の合計))÷人数
↑ 上の人と同じ様な考え方ですが、これはさほど厳密な話ではないので、 ・・と云うか平均勤続年数の厳密な定義すらないですから、
先ず平均入社日と呼ぶべきものを求めて、その日と今日との年月数を計算すればいいです。
(半平太) 2012/11/21 10:51
入社日の平均値を「G110」の処に代入するだけです。
※日付はシリアル値と呼ばれる数値で入っていますので、Average関数で出せます。
>具体例をお示しいただくと助かります。 と云われましても、入社日の入っているセルは複数あるハズですが、 それがどの範囲なのか書かれていないので示しようがないです。
そもそも、これが嘘っぽいです。逆じゃないですか? ↓ >G110には今日の日付が入っています。
入社日が「G100からG200」に入っているとしたら、
=DATEDIF(AVERAGE(G100:G200),$H$3,"y")&"年"&DATEDIF(AVERAGE(G100:G200),$H$3,"ym")&"ヶ月"
(半平太) 2012/11/21 12:10
半平太さんがおっしゃっているように、平均の勤続年月の定義自体があいまいです。
個人ごとに平均の勤続年月を出して(月未満は切り捨て)それを平均するのか、 勤続年月日を日の単位まで出してそれを平均してからつき未満を切り捨てるのかで 結果が違ってきます。
ちなみに私が最初に書いたのは前者のほうで、 半平太さんが示されてる数式は、後者のほうですね。(sato)
「勤続年月」という考えなら「日」の差がでるとややこしいね。
まぁ、回答者はどっちが正解かわからないけど。
=TEXT(INT(AVERAGE(INDEX(DATEDIF(A1:A5,B1,"m"),))/12),"0年;;")&TEXT(MOD(AVERAGE(INDEX(DATEDIF(A1:A5,B1,"m"),)),12),"0ヶ月;;")
※小数点は四捨五入。
(GobGob)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.