• ベストアンサー

男女別参加者数

Excel2007の添付図にて、 参加コードの1は参加、0はキャンセル、空白は申し込みなし。 この表から男女別参加者数を求めたい。 ここで男はADFの3名となる。

  • aerio
  • お礼率56% (982/1741)

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

1で男: =COUNTIFS(A:A,1,C:C,"男") 1で女: =COUNTIFS(A:A,1,C:C,"女") 実際には勿論,添付図のように集計する。

その他の回答 (4)

回答No.5

Excelのバージョンが2007ですのでNo2の方の計算式が楽だと思いますけど、別の方法として配列数式も立ててみました セルF3に・・・ =COUNT(IF(($C$2:$C$7=F$2)*($A$2:$A$7=1),$A$2:$A$7)) の式を入れて「Ctlr」+「Shift」を押しっぱなしにしておいて最後に「Enter」を押します この式を右へコピーします F3セルには式の前後に{}が入り{=COUNT(IF(($C$2:$C$7=F$2)*($A$2:$A$7=1),$A$2:$A$7))}←こんな感じの式になります 

aerio
質問者

お礼

コメントありがとうございます。 言われる通り、No.2が簡単かつ直観的という意味で使わせてもらいます。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 ANo.3です。 >この式では男の数にはなりますが、eは参加コードが0ですのでキャンセルを意味し、参加者に入りません。答えが3ではなく4になりませんか?  いいえ、0を何回足したとしても、0のままですから、合計数に影響する事は無く、参加者コードに入力されている数の内、C列が男となっている行のみの合計は3となります。  これが例えば、0や1ではなく、2や3といった数が入力されている場合には、カウントがが合わなくなります。  この様な短所はありますが、SUMIF関数は、Excel2007よりも前のバージョンでも使用可能というメリットがあります。(COUNTIFS関数はExcel2007以降でないと使えません)  それから、Excel2007よりも前のバージョンでも使用可能な関数であるSUMPRODUCT関数を使用して、 =SUMPRODUCT(($A$2:$A$6=1)*($B$2:$B$6="男")) とすれば、参加者コードに1以上の数値が入力されている場合でも、正しくカウントする事が出来ますが、SUMPRODUCT関数は計算処理に要する負荷が大きくなり易いため、参加者人数が何千人もいる場合には、結果が表示されるまでに時間が掛かる様になります。(2000人前後までなら大したことは無いと思います)  ですから、もし、Excel2007よりも前のバージョンで使用する事を全く考慮する必要が無い場合には、COUNTIFS関数を使うのが正解ですし、 Excel2007よりも前のバージョンで使用する事を考慮する必要がる場合で、且つ、参加者人数が2000人以下の場合には、上記のSUMPRODUCT関数を使う方が良いですし、 Excel2007よりも前のバージョンで使用する事を考慮する必要がる場合で、且つ、参加コードに入力される値の内、数値データとなるものは0と1以外にはない、というルールがきちんと守られている場合には、SUMIF関数を使う方法が良いと思います。

aerio
質問者

お礼

参加コードとして文字Aではなく、数字の1を使ったのは足し算できるのが目的でした。それで、sumが使えるのをを忘れていました。 参加コードが文字Aでは同じ結果にはならないはずですね。 #2より簡単な式になること分かりました。アドバイスありがとうございました。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 今仮に、参加と記されているセルがA1セルで、男女と記されているセルがC1セルであるものとします。  御質問の様に、参加者が数字の1で、その他の場合は0か空欄のみという条件でしたら、次の関数で、参加者の人数を求める事が出来ます。 男の参加者人数を求める関数 =SUMIF($C:$C,"男",$A:$A) 女の参加者人数を求める関数 =SUMIF($C:$C,"女",$A:$A)

aerio
質問者

お礼

コメントありがとうございます。 この式では男の数にはなりますが、eは参加コードが0ですのでキャンセルを意味し、 参加者に入りません。答えが3ではなく4になりませんか?

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

ピボットテーブルは試されたましたでしょうか。 挿入=>ピボットテーブル でウィザードに従っていけば 添付の画像の様になります。

aerio
質問者

お礼

pibott table ここでは少し大げさになりますが、 男女のほか会員・非会員、乗車駅の区分分けもありますのでその時使うことにさせてもらいます。 アドバイスありがとうございました。

関連するQ&A

  • 北京五輪の男女別参加者数を教えてください

    北京オリンピックの男女別参加者数を知りたいのですが、ご存知の方や載ってるサイトなど、知っている方いらっしゃいませんか? 公式ホームページは見たのですが、役員など選手以外の人も混ざっているようで、正確な数が把握できません。 どうぞよろしくお願いいたします。

  • 複数の表から男女別の平均年齢をだしたい。

    Excel2003です。 複数の表から「DAVERAGE関数」を使って1回で男女別の平均を出したいのですができますか 例えば画像のような2つの表の場合です。

  • エクセルで男女別の順位

    エクセルで個人毎の成績表を100名分ほど作成しています。 次のような項目で,全体順位は簡単に表示できたのですが,最後に男女別の個人順位を表示するには,どのような関数を使えば良いのでしょうか? どなたか教えてください。よろしくお願いします。 【項目】  氏名  性別  成績1  成績2  成績計  全体順位  男女別順位   A   男   B   女   C   女   D   男

  • 作った表に付けた○の数を数えたい

     こんばんは。 エクセルの関数でこういうことができないものかという質問です。  タイトルの通りなのですが、横軸に日付、縦軸に名前を並べます。何日に誰が利用したかという表で、その方が使った日に○を付けていきます。  性 別       1日 2日 3日   男  山田 太郎  ○     ○   女  佐藤 花子  ○  ○   女  鈴木 一子     ○  ○   男  高橋 次郎  ○ といった表です。 で、例えば、ただ、○の数を数えるのであればCOUNTIFを使ってできました。  さらに、それを男女別に分けたいのです。 何日に、女性何名、男性何名 という別に作った表に、上記に書いたような先に作った表から、丸の数を数えて表したいのです。  例えば、    男性    女性 1日 2 名    1 名 2日 0 名    2 名 といった表に上の表を使って自動的に数値が入るようにしたいのです。  説明不足かもしれませんが、補足いたしますので宜しくお願いいたします。  また、参考になるサイトがあれば、合わせて教えていただきたいと思います。  どうぞ宜しくお願いいたします。

  • EXCELの成績表を男女別にアウトプットしたいです

    70歳のおじいちゃんに頼まれ、ここで相談しながら成績表の順位を 自動で算出できるようになりましたが、今回はそれを男女別に 表示したいと相談がありました。 添付画像をご確認ください。 男女別に表示できれば、アウトプットは特にこだわりません。 お手数ですが、よろしくお願いします。

  • 入力されたセルのみを別シートにリンク

    EXCEL2Kです。入門者ですのでご指導下さい。あるシートに日付け毎に入力表(一部リスト選択)があります。毎日入力はありませんので、入力されたセルのみ(空欄は除外)別シートにリンクさせたいのですが、可能でしょうか?添付図のイメージです。宜しくお願いします。

  • 宴会の会費を男女別に計算したい

    宴会の幹事を引き受けたのですが 参加人数が流動的で、会費の計算に苦労しております。 居酒屋でコースで注文するので金額は決まっていますが、 追加注文があれば、会費も変わってきます。 ちなみに男性3200円女性2800円子供600円です。 最後の会計の時に合計金額から 男性○名・女性○名・子供○名で 金額を割り出せるような方法があれば 教えていただきたいと思います。 参加人数の構成(男女・子供)もバラバラで、 事情によりだいたいの金額での支払いは駄目なので、 なんとか数式などにあてはめて表が作れればと考えております。 よろしくお願いいたします。

  • Excel関数で該当の記号の数を抽出したい

    Excel関数で該当の記号の数を抽出したい 図1のような表があり、図2で図1の該当の記号数を表示させたいです。 例えば、2008年の1月に●がいくつあったか、×がいくつあったか、 というようにそれぞれの記号の数がわかるようにするには 黄色のセルにどのような関数を入れれば良いでしょうか? よろしくお願いします。

  • エクセルで2つの項目を下から規定数のデータでグラフ

    15枚のシートに同じ書式の表がありそのシート上に任意の2列の列データを下から30個指定してグラフ化したいのです。 表に空白セルは無く、データ数が30個以下の場合は全数でグラフ化したい。 製品A、製品B・・・というように製品名のシートが15枚あります。 この表の2列のデータを下から30個でグラフ化したく。列は固定することも可です。 データ数や項目行やデータの開始行は下記の様にコード中で指定でも問題なく使用できると思いますが、もし可能なら添付の図のように決まったセルから指定できれば最高です。 コード中での指定の場合表がずれた場合に不都合になってしまいますが、今のところ表の位置を合わせることもできそうですので必須条件ではありません。 Const MaxRows = 30 'データ範囲に指定する最大行数 Const ColNum1 = 5 '1つ目データ格納列 Const ColNum2 = 7 '2つ目データ格納列 Const SRowNum = 17 'データ開始行番号 Const KoumokuRow = 5 '項目名格納行番号

  • excel男女混合名簿を別のシートへ男女別にしたい

    sheet1に、男女混合名簿を作成しました。    A    B    C    D    E 1  年   組   性  名前   住所  2   1   1    男   山田   東京都 3   1    1   女   鈴木   神奈川県 4   1    1   男   高橋   埼玉県 5 1 1 男  佐藤  千葉県 6 1 1 女  田中 茨城県 7 1 1 男  松井  沖縄県 sheet2に、男女別の名前だけの名簿(男だけが先女だけが後)   A   B  C  D  E 1 山田 2 高橋 3 佐藤 4 松井 5 鈴木 6 田中 のようにしたいのですが、どうしたらいいですか? (1)sheet1が変更されたら、sheet2も自動的に変更したい。 (2)VBAなしで という初心者向けのわがままですが、よろしくお願いいたします。  

専門家に質問してみよう