[[20160928105043]] 『在籍年数別の人数をカウントする』(ららら) ページの最後に飛ぶ

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

 

『在籍年数別の人数をカウントする』(ららら)

現在、「D5」に入社日のデータが入力されており、それをもとに「E5」に次の関数をいれてあります。(D列に入社日、E列に関数をいれて在籍期間を表示)

=DATEDIF(D5,TODAY(),"Y")&"年 " & DATEDIF(D5,TODAY(),"YM") & "ヶ月"

今回、お尋ねをしたいことは、E列に出てくる在籍期間の結果をもとに、入社10年以上は何人、入社9年目は何人、入社8年は何人、・・・入社1年未満は何人というふうに、自動で計算してくれる関数をしりたいのですが、どうすればいいのか押しええください。

はじめ、COUNTIFSで検討したのですが、演算結果から出てくる在籍期間の表示をどう処理していいかわからず、また、IF関数で日付を絞ってカウント使用としましたが、結局は、関数の結果からでてくる日付の処理がうまくいきません。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


更にF列を追加し、何年目か、という情報だけを表示してはいかがでしょうか。
何ヶ月、の部分が無ければ、COUNTIFS関数で簡単に集計できますよね。
(???) 2016/09/28(水) 11:06

 =SUMPRODUCT((D5:D10<>"")*(DATEDIF(D5:D10,TODAY(),"Y")>=10))
 こんなのでもいいか。
 (E列ではなく元のD列を使っているが)

 なお、(D5:D10<>"")は範囲内に空白がある場合を想定している。

 必ずデータのある範囲を指定するのであれば
 =SUMPRODUCT((DATEDIF(D5:D10,TODAY(),"Y")>=10)*1)
 で。
(ねむねむ) 2016/09/28(水) 11:12

 E列を数値にしてしまえば?

 =DATEDIF(D5,TODAY(),"Y")*100+DATEDIF(D5,TODAY(),"YM")
 表示形式 0年00ヶ月

 これを使う。
 
(GobGob) 2016/09/28(水) 11:14

 入社10年以上は
 =COUNTIF(E5:E100,"??年*")

 9年以下は、例えばG3:G12に「9〜0」を入力しておき

 H3 =COUNTIF($E$5:$E$100,G3&"年*") 下コピー

 とか。
(笑) 2016/09/28(水) 11:24

皆さん、ありがとうございました。
関数がよくわからず、四苦八苦でしたが、無事にできました。
ありがございます。
(ららら) 2016/09/28(水) 14:49

コメント返信:

[ 一覧(最新更新順) ]


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