• ベストアンサー

【Excel】年齢・人数・性別を年代・性別毎に集計したい

業務上にて集計していたのですが、自分の知っている範囲で処理できず困っています。 まず以下のテーブルが前提にあります。 *********************************** 年齢    人数    性別コード 18     2      0 22     3      0 22     2      1 35     2      0 *********************************** ※性別コード 0が男性 1が女性です。 これを以下の表にまとめたいと思っています。 *****************************    10代 20代 30代・・・ 男性  2  3   2 女性  0  2   0 ***************************** SUMPRODUCT関数でやってみたのですが、年齢別に人数が数える方法が分かりませんでした。よろしくご指導願います。

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

  • ベストアンサー
  • don9don9
  • ベストアンサー率47% (299/624)
回答No.2

ちょっと違うやり方になりますが、項目を一つ増やしてよければ D2に[=TRUNC(A2,-1)]と入力して、これを最終行までコピーします。 (これでD列には10代なら10、20代なら20、が入ります) 後は、ピボットテーブルで集計できます。

afoneko
質問者

お礼

ご教授ありがとうございます。 ピボットテーブルのを使うという概念を失念していました。 こちらの方法参考に今後しようさせていただきます。

その他の回答 (3)

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

質問にある、年齢、人数、性別コードのまま、   行に性別コード、   列に年齢、   データに人数をセットし、 ピボットテーブルを作成し、 できたピボットテーブルの年齢を右クリックし、 グループとアウトラインの設定→グループ化で 先頭の値と単位を入力すれば終わりです。 わざわざ、10代、20代・・・と計算する必要はありません。 ピボットでは、これ以外に年月日を年や月単位に集計するよう設定もできます。

afoneko
質問者

お礼

遅くなりましたが、ありがとうございました。参考になりました。

noname#204879
noname#204879
回答No.3

“別解”ということで…   A   B    C    D  E F 1 年齢 人数 性別コード 年代   10 2  18   2      0 10代   20 3  22   3      0 20代   30 4  22   2      1 20代   40 5  35   2      0 30代   50 6                  60 7 D2: =VLOOKUP(A2,$F$1:F$6,1) ユーザー定義書式: 0"代" 範囲 A1:D7 に対して作成したピボットテーブルレポート(ピボテ)を次のように表示させることができます。 合計/人数  年代 性別コード 10代 20代 30代 総計    男性   2   3   2   7    女性      2      2 総計      2   5   2   9 ただし、ピボテの「性別コード」の列を次のユーザー定義書式を設定しています。 [=1]"女性";[=0]"男性"

afoneko
質問者

お礼

ご教授ありがとうございます。 表から細かく定義まで教えて頂き大変参考になりました。 ピボットテーブルで未だに基準を迷うのでとても丁寧で助かります。 ありがとうございました。

  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.1

  A列 B列 C列 1 年齢 人数 性別コード 2 18 上記のレイアウトで 仮に10代男性の人数を求める計算式 ($表記は 絶対番地) =SUMPRODUCT(($C$2:$C$5=0)*($A$2:$A$5>=10)*($A$2:$A$5<20)*($B$2:$B$5)) 性別条件式 ($C$2:$C$5=0) は男女 女性の場合は =1 に変更 年齢条件式 ($A$2:$A$5>=10)*($A$2:$A$5<20) は 10以上~20未満 この式の意味が分かれば、部分的に 数値を変えるだけ。

afoneko
質問者

お礼

ご教授ありがとうございます。 SUMPRODUCT関数の使い方ひとつだったんですね。 すっきり集計できました。 ありがとうございます。

関連するQ&A