[[20210916130432]] 『勤続年数の平均』(hana) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『勤続年数の平均』(hana)

現在、社員の勤続年数を以下の関数で算出しています。

 =TEXT(DATE(0,DATEDIF(入社日,基準日,"M"),1),"y年mmヶ月")

勤続年数の平均を出したいのですが、良い方法はありますでしょうか
以下の関数では全く違う値が出てしまいました。

 =TEXT(DATE(0,SUM(AE12:AE151)/AC162,1),"y年mmヶ月")

PCの操作が苦手な方が更新していくので、できれば作業列は設けたくありません。

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

< 使用 Excel:Excel2016、使用 OS:unknown >


 AE12セルからAE151セル及びAC162セルには何が入力されているのだろうか?
(ねむねむ) 2021/09/16(木) 13:45

ねむねむ様

説明不足で申し訳ありません
AE12からAE151は以下の関数が入っており、社員の勤続年数が表示されています。

  =TEXT(DATE(0,DATEDIF(入社日,基準日,"M"),1),"y年mmヶ月")

AE12からAE151の間に退職者の行も存在している為
AC162に人数の総数が記載してあります。

イメージとしては全員の勤続年数を足して、人数で割って平均値を出そうとしています。

●年●ヶ月の表示形式で出ると非常に助かります。
(hana) 2021/09/16(木) 14:13


横からですが、
退職者については、
=TEXT(DATE(0,DATEDIF(入社日,基準日,"M"),1),"y年mmヶ月")
のセルは値はどうなっているのですか?
退職者かどうかのフラッグはどこかの列にあるんですかね。

(γ) 2021/09/16(木) 14:32


γ様

説明があっているかどうかわかりませんが、対象セルの見た目は●年●ヶ月になっており
値で別セルにペーストすると4桁の数字になりました。

退職者かどうかは別の列に記載があります。
(hana) 2021/09/16(木) 14:38


勤続年数のセルは文字列化せずに、表示で対応するよう変更し、
そのうえで、AverageIf関数で平均をとればよいのではないですか?

(γ) 2021/09/16(木) 15:43


 列が1列増えるので依頼者の要望には合わないですが
 年と月とセルを分けて表示で対応してみてはどうでしょうか

 年=ROUNDDOWN(DAYS360(入社日,TODAY())/360,0)
 月=MOD(ROUNDDOWN(DAYS360(入社日,TODAY())/30,0),12)

 数値で表示されると思いますのであとはAVERAGE関連の関数で平均を出せばよいのでは
(なるへそ) 2021/09/16(木) 16:51

 ちょっと確認

 >=TEXT(DATE(0,DATEDIF(入社日,基準日,"M"),1),"y年mmヶ月")
 この式だったら入社24か月の人は「01年12ヶ月」になりますけど、それでいいんですか?
 普通は「2年0ヶ月」では?
 入社1か月未満(0か月)だったらエラーになるし

 ついでに・・・

 1)入社日はどの列に入力されているのか?
 2)基準日はどのセルに入力されているのか?
 3)退職者はどの列に何が入力されているのか?

 具体的なことがわからないので具体的な回答はできませんが
 平均月数なら =DATEDIF(入社日の平均,基準日,"M")
 こんな感じで出ませんか?
 退職者を除外するのなら入社日の平均は AVERAGEIF で

 以上
(笑) 2021/09/16(木) 19:17

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.