• ベストアンサー

excelで社数と人数をカウントしたいのですが

EXCELでセミナ来場者名簿を作成しています。 会社名  来場者名  弊社担当部門 A社   木村さん   開発部 A社   鈴木さん   開発部 B社   田中さん   販売部 C社   斉藤さん   販売部 C社   山元さん   販売部 このとき、来場した社数と人数を部門別にカウントしたいのですが、どのような関数を使用したらよいでしょうか。 具体的には以下の形にまとめたいです。 ピボットテーブル等は使用したくありません。 開発部  1社 2名 販売部  2社 3名

質問者が選んだベストアンサー

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.2

   A   B     C      D   E   F   G 1 会社名 来場者名 弊社担当部門 2 A社  木村さん  開発部        開発部  式1 式2 3 A社  鈴木さん  開発部        販売部 4 B社  田中さん  販売部 5 C社  斉藤さん  販売部 6 C社  山元さん  販売部 のようになっているとします。この状態で、式1と式2を登録します。 F2には、式1として  =SUM(IF($C$2:$C$6=E2,1/COUNTIF($A$2:$A$6,$A$2:$A$6),0))&"社"   (この式は配列数式なので、登録する時はCtrl+Shift+Enter とします) G2には、式2として  =COUNTIF($C$2:$C$6,E2)&"名"   (これは普通の式です。Enterで登録します) とします。 販売部については上のセルをコピーします。

misty_mr
質問者

お礼

ありがとうございます。早速やってみましたら、思い通りの結果になりました。 >配列数式なので、登録する時はCtrl+Shift+Enter とします 配列数式というのは初めて知りました。とても勉強になりました!

その他の回答 (1)

  • camel777
  • ベストアンサー率37% (12/32)
回答No.1

こんばんは あまりいい方法じゃないかもしれませんが、 まずはデータを(1)担当部門、(2)会社名の優先順で並べ替えます。 1行目はタイトル行として、A1「会社名」B1「来場者名」C1「担当者名」で、 2行目からデータが入っているとします。 下記のようにD2に「1」とD3に「=IF(A3=A2,D2+0,D2+1)」を入力します。 A2:A社 B2:木村さん C2:開発部 D2:1 A3:A社 B3:鈴木さん C3:開発部 D3:=IF(A3=A2,D2+0,D2+1) あとはD3のフィルハンドルをドラッグして開発部のデータの最後の行までコピーします。 D列の一番最後の行に出た数字が開発部に来場した会社数になります。 人数は部門ごとにセルの数をカウントすれば出ますよね。

misty_mr
質問者

お礼

早速ご回答くださいまして感激です。 部署ごとに表を作ればこれでも可能ですね。 ご教授ありがとうございます。

関連するQ&A