• ベストアンサー

エクセルであるフィールド毎に合計を計算したい。

以下の案件をエクセルのみで実現させたいと思っております。 社名  名前  件数 ---------- A社 A1さん 2件 B社 B1さん 5件 A社 A2さん 5件 B社 B1さん 2件 これを各社各人毎に合計件数を出したいと思っています。 Accessであれば、select sum(件数) from テーブル group by 社名,名前 と、簡単に出せるかと思いますが、エクセルだけでこれを実現するためには どのような手法がありますでしょうか。 また、このようにデータのAccess的な扱いを紹介しているサイトなどありましたら ご教授いただければ幸いです。 よろしくお願いいたします。

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

  • ベストアンサー
  • Cbay
  • ベストアンサー率50% (41/81)
回答No.2

こんにちは^^ 2段階の手順を踏むことになりますが以下の方法がわかりやすいと思いますので是非試してみてください。 Accessに似た集計方法になります。 (1) 「社名-名前」という列を追加します。(ここではC列に追加したことにします。) (2) C2に「A2&"-"&B2」と入力します。("-"は社名と名前に入れる区切り記号なので、なくても別の文字でもかまいません。) (3) 必要な行数分C2の式をコピーします。   A   B      C       D ------------------ 1|社名  名前  社名-名前  件数 ------------------ 2|A社 A1さん =A2&"-"&B2  2件 3|B社 B1さん =A3&"-"&B3  5件 4|A社 A2さん =A4&"-"&B4  5件 5|B社 B1さん =A5&"-"&B5  2件 こんな感じになりますね^^(ちょっとずれてるかも^^;) (4) [データ]→[集計]をクリックし、「グループの基準」で「社名-名前」を選択し、「集計の方法」は「合計」を「集計するフィールド」では「件数」にチェックを入れOKボタンを押します。 これでうまく集計できると思います^^

BENGAL
質問者

お礼

ありがとうございます! 4番を実行しますと、3行目と5行目が別でカウントされてしまいました。 ただ、並べ替えを行って、3行目と5行目を連続した行にしますと、 希望する結果が返ってきました(^^) 『社名-名前』の同じデータが連続していなくても、 うまくいけたら良いなと、欲張ってしまいましたが、 かなり参考となりました! ありがとうございました!

その他の回答 (1)

  • platypus
  • ベストアンサー率27% (24/88)
回答No.1

Excelにはクロス集計をするピボットテーブルという機能がありますので、それを利用されるのが一番便利だと思います。 参考になりそうなサイトのURLを下記に記載いたします。 また、質問を拝見しますとSQLをお使いになるようですので、Common SQL Environment等のソフトウェアを利用して、ExcelファイルにODBC経由で接続する方法もあるように思います。 http://www.hi-ho.ne.jp/tsumiki/

参考URL:
http://www2.odn.ne.jp/excel/waza/pivot.html
BENGAL
質問者

お礼

ありがとうございます! ピボットテーブルですね! ExcelやAccessを使える人間だと使い分けができたのですが、 今回は、Excelのみと言う要望があり、困っておりました(^^; 助かりました!(^^)

関連するQ&A