- ベストアンサー
エクセルの集計方法
エクセルの質問です。 講習会の参加者名簿を作成しているのですが、 A列に参加者の社名、B列に参加者氏名、C列に出席だったら○を入力しています。 出席○のお客様の内訳を、 同じ会社は1軒として、何軒の何名と出したいのですが、 どうすればいいのでしょうか? ピボットテーブルではなく、関数で出せませんか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
データが2行目から31行目と仮定して 出席者の○の数は =COUNTIF(C2:C31,"○") 会社名の単純な名寄せ件数(重複を除いた数)なら =SUMPRODUCT(1/COUNTIF(A2:A31,A2:A31)) です。 ただし、1社で1名の出席予定が、欠席となって○が付かなかった分を会社の名寄せ件数から除外するなら =SUMPRODUCT(1/COUNTIF(A2:A31,A2:A31))-SUMPRODUCT((COUNTIF(A2:A31,A2:A31)=1)*(C2:C31<>"○"))
その他の回答 (3)
- mu2011
- ベストアンサー率38% (1910/4994)
NO2です。 数式を訂正します。 因みに見出し行なしとしていますので、見出し行がある場合は、セル範囲開始をA2、C2として下さい。 =SUMPRODUCT(1/COUNTIF(A1:A10,A1:A10))&"社"&COUNTIF(C1:C10,"○")&"名"
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 =SUMPRODUCT(1/COUNTIF(A1:A5,A1:A5))&"社"&COUNTIF(B1:B5,"◎")&"名"
- piro19820122
- ベストアンサー率38% (256/672)
Excelのバージョンが書かれていませんが、2007以降であれば、COUNTIFS関数を使うのが楽かと思います。 =COUNTIFS(A1:A100,"会社名",C1:C100,"○") といった感じで。 2003以前あるいは互換性を考慮するなら、SUMPRODUCT関数でどうでしょうか? =SUMPRODUCT((A1:A100="会社名")*(C1:C100="○"))