• ベストアンサー

エクセルの関数 sumpuroduct

ご存知の方がいらしたら教えいただけますか? エクセルの関数でSUMPURODUCUT関数がありますが文字列があっても集計の対象となると思うのですが、文字列が2つ以上あっても集計されるのでしょうか?うまく計算できないのです・・・   A   B     C    D 1 201 営業所1 商品1  100 2 201 営業所1 商品2   20 3 202 営業所2 商品1  120 4 202 営業所2 商品2   80 5 203 営業所3 商品1   60 6 203 営業所3 商品2   20 7 204 営業所4 商品1  150 8 204 営業所4 商品2   80       ・       ・       ・ という表があった場合に営業所1と営業所2と営業所4の商品1の合計ってSUMPURODUCT関数で集計できるのでしょうか? それとも他の関数でもできますか? 初心者なのであまり関数のことが理解できてません。m(__)m よろしくお願いします。

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

  • ベストアンサー
回答No.1

  こうします =SUMPRODUCT((C1:C8="営業所1")*(D1:D8="商品1")*(E1:E8))+SUMPRODUCT((C1:C8="営業所2")*(D1:D8="商品1")*(E1:E8))+SUMPRODUCT((C1:C8="営業所4")*(D1:D8="商品1")*(E1:E8))  

dolphiner
質問者

お礼

返事が遅くなりましたがありがとうございました。m(__)m この数式がわかりやすかったので実際のデータでしたところ成功しました!! 嬉しかったです。本当にありがとうございました。

その他の回答 (3)

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.4

訂正します。括弧多かったですね =SUMPRODUCT(((C1:C8="営業所1")+(C1:C8="営業所2")+(C1:C8="営業所4"))*(D1:D8="商品1")*E1:E8)

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.3

=SUMPRODUCT(((C1:C8="営業所1")+((C1:C8="営業所2")+(C1:C8="営業所4"))*(D1:D8="商品1")*E1:E8) =SUMPRODUCT((C1:C8={"営業所1","営業所2","営業所4"})*(D1:D8="商品1")*E1:E8) 質問の例題であれば =SUMIF(D1:D8,"商品1",E1:E8)-SUMPRODUCT((C1:C8="営業所2")*(D1:D8="商品1")*E1:E8) と言うのもありかな

dolphiner
質問者

お礼

ありがとうございました。 わざわざ訂正の回答までいただいて嬉しかったです。

回答No.2

>SUMPURODUCT関数で集計できるのでしょうか? >初心者なのであまり関数のことが理解できてません。m(__)m 意味がわからないなら使わないほうが良いと思います。 =SUMPRODUCT(NOT((B1:B8<>"営業所1")*(B1:B8<>"営業所2")*(B1:B8<>"営業所4"))*(C1:C8="商品1"),D1:D8) ド・モルガンの法則を活用してみました。 >それとも他の関数でもできますか? タイトル行を設けてDSUM関数を使います。添付図参照。 F7セルは =DSUM(A1:D9,4,F1:G4)

dolphiner
質問者

お礼

返事が遅くなりましがm(__)m ド・モルガンの法則がはっきりとは理解できないのが悔しいのですが・・・わかりやすい画像までありがとうございます。DSUM関数は使えそうです。大変勉強になりました。

関連するQ&A