• ベストアンサー

エクセルの集計方法

エクセルの質問です。 講習会の参加者名簿を作成しているのですが、 A列に参加者の社名、B列に参加者氏名、C列に出席だったら○を入力しています。 出席○のお客様の内訳を、 同じ会社は1軒として、何軒の何名と出したいのですが、 どうすればいいのでしょうか? ピボットテーブルではなく、関数で出せませんか?

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.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)
回答No.3

NO2です。 数式を訂正します。 因みに見出し行なしとしていますので、見出し行がある場合は、セル範囲開始をA2、C2として下さい。 =SUMPRODUCT(1/COUNTIF(A1:A10,A1:A10))&"社"&COUNTIF(C1:C10,"○")&"名"

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

一例です。 =SUMPRODUCT(1/COUNTIF(A1:A5,A1:A5))&"社"&COUNTIF(B1:B5,"◎")&"名"

回答No.1

Excelのバージョンが書かれていませんが、2007以降であれば、COUNTIFS関数を使うのが楽かと思います。 =COUNTIFS(A1:A100,"会社名",C1:C100,"○") といった感じで。 2003以前あるいは互換性を考慮するなら、SUMPRODUCT関数でどうでしょうか? =SUMPRODUCT((A1:A100="会社名")*(C1:C100="○"))

関連するQ&A