• ベストアンサー

EXCELでの計算式を教えてください

例えばこのような表があったとして 会社名  売上   商品名 A社   1,000   りんご B社   2,000   みかん C社   5,000   なし A社   2,000   りんご B社   1,000   りんご C社   4,000   りんご 商品名りんごでフィルタした場合、subtotal関数を使用すれば、りんごだけの売上合計を計算できますよね。 さらにりんごでフィルタした時に、A社だけの、りんごの売上合計をだしたいと思っているのですが、どのような計算式を入れれば良いのでしょうか?

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

ご希望のデータ表示が、会社ごとの商品別売り上げを簡単に集計したいという意味なら、ピボットテーブルを使用することをお勧めします。 ピボットテーブルウィザードでたとえば、行フィールドに商品名、列フィールドに会社名、データフィールドに売上をドラッグすれば自動的にクロス集計してくれます、 テーブルの形式を会社ごとの一覧にしたい場合は、列フィールドの会社名をページフィールドにドラッグします。 もちろん、行と列に商品名と会社名を入力した表を作成し、SUMPRODUCT関数を使用してそのクロスするところに合計額を表示することもできます。 =SUMPRPDUCT(($A2:$A100="A社")*($C2:$C100="りんご")) 会社名と商品名の部分は項目を入力したセルを適宜複合参照してください。

ren_2006
質問者

お礼

ピボットテーブルを使用するのは初めてでした。MackyNo1さんがおっしゃるように項目を挿入してみたら簡単に集計されて感動しました。 難しい関数を使わずに集計できて、しかもラベル単位でフィルタも行えるのですね。 私が目指していたものとは少し違うのですが、この方法を工夫すれば上手くいきそうです。光が見えてきました。ありがとうございます。

その他の回答 (5)

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

全く別案ですが、ピボットテーブルは試されましたか。 データ=>ピボットテーブルとピボットグラフ・・・ ウィザードに従っていくと 新しいシートに下の様な値が自動で作成されます。

ren_2006
質問者

お礼

ピボットテーブル便利ですね。関数を使用するよりも簡単にできそうなのでピボットテーブルを使う方向で行こうと思います。ありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

こんばんは! すでに回答は出ていますが・・・ 他の方法の一例です。 DSUM関数を使っています。 ↓の画像のG2セルに =DSUM(A1:C1000,2,E1:F2) という数式を入れています(1000行まで対応できるようにしています) これで会社名と商品名を入力すれば その合計がG2セルに表示されます。 尚、エラー処理をしていませんので、空白の場合は全ての合計が、 会社名か商品名のどちらか一方だけを入力すれば その条件の合計が表示されます。 以上、参考になれば幸いです。m(__)m

ren_2006
質問者

お礼

こんな方法もあるのですね。参考にさせていただきます。回答ありがとうございました。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

質問に、難しく書いているが 2条件の加算ではないのか。 それも関数でやりたいと。 毎日のように、このコーナー(エクセル)に出る質問だ。 2003までではSUMPRODUCT関数 2007ではSUMIFS関数 でできる。 これらの関数は、Googleででもこの関数名で照会してみてください。 沢山実例で説明してある記事が見つかる。 ーーー フィルタという言葉を使いながら、>どのような計算式を入れれば良 ・・は関数式を聞いているのだろう。エクセルにはフィルタという暦とした機能があるので、紛らわしい。 2段フィルタならsubtotal関数を(データ行外で)設定しておけば(そのままにしておいて)(絞込みを重ねても)できる(合計が出る)。

ren_2006
質問者

お礼

関数式というのが正解なのですね。普段は関数というとオートSUMにあるようなものしか使用していないので、関数に馴染みがあまりなくて、計算するためにセルに入れる式は、みんな計算式だと思っていました。紛らわしくてすみませんでした。 SUMPRODUCT関数、SUMIFS関数については、既にgoogleで検索していました。 検索してでてきた内容を参考にして、式を自分のExcelに入力してもエラーになり上手くいかず困ってしまい、ここで質問させていただいたという次第です。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

SUBTOTAL関数はフィルタ操作などで画面に表示されているデータを数えることができるので、りんごでフィルタをしたときはりんごだけの売上合計が、みかんでフィルタすればみかんだけの売上合計が計算できますね。 このとき売上金額がB列にあるとしたら、売上合計を求める式は=SUBTOTAL(9,B:B)でよいでしょう。 りんごでフィルタをした後で、さらにA社だけのフィルタをすればA社のりんごの売上合計がその式のままで求められることでしょう。

ren_2006
質問者

お礼

確かにそうです。No.1様の方にも書かせてもらったのですが、私の質問の書き方が良くなくてすみません。

  • kent_a
  • ベストアンサー率18% (36/199)
回答No.1

式は変更しなくても、会社名と商品名でフィルタするばいいのでは?

ren_2006
質問者

お礼

確かにそうですね。私の質問の書き方が良くありませんでした。 項目(今回の質問の場合「会社」「売上」「商品名」)の上に表を作っておいて、商品名でフィルタした時にA社B社C社のそれぞれの売上計が、その表で分かるというような事をやりたいと思っています。 2項目をフィルタすれば、欲しい値はでてくるのですが、何度もフィルタしないといけないので、一度でできたら便利だなと思って質問させていただきました。

関連するQ&A