• ベストアンサー

EXCELである担当者が売った商品だけの合計金額を求めたいのですが、SUMIF関数だけで出来ますでしょうか?

A1からA10に担当者の名前が入っているとします。 B1からB10にそれぞれいろいろな商品名が入っているとします。 C1からC10には金額が入っているとします。 ある担当者が売ったAという商品だけの金額の合計を求めたいのですが、SUMIFだけではうまくいきません。 何か方法はありますでしょうか?

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

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

#2の補足です。配列数式の解説は難しいですが・・・。  通常の計算は、配列を式に組み込むと、SUM/AVERAGE/PRODUCT/COUNT/AND/OR等配列を引数に取る箇所を除き、強制的に、何らかの「値」に置き換わってしまいます。 B2=A1:A10→A2 B2=A1:A10+0→A2 B2=A1:A10=0→A2=0(TRUE又はFALSE) B2=$A$1:$A$10→#VALUE! B11=A1:A10→A11 B11=A1:A10+0→#VALUE! B11=A1:A10=0→#VALUE! B11=$A$1:$A$10→#VALUE!  そこで、配列の各要素で計算させて、全体を配列のまま返したいといった場合に配列数式を使用します。  先の式では、 (A1:A10="担当者の名前")*(B1:B10="商品の名前")*C1:C10  これ全体を配列として、SUM関数で総和を取っているわけです。

nkayo
質問者

お礼

ありがとうございます。。。 なるほど・・・奥が深く難しいですね。。。 ありがとうございました!

その他の回答 (6)

  • mktoolll
  • ベストアンサー率22% (20/88)
回答No.6

1ステップ踏めばSUMIFのみで可能です。 D1セルに  =A1&B1 を記述し D10までオートフィルコピー A1が担当者 B1が商品名 なら D1は 担当者商品名 となります。 E1セルに”担当者商品”を入力して E2セルに合計を出したいならば    E2セル =SUMIF(D1:D10,E1,C1:C10) といれれば OK。 D列は非表示にしておけば問題ないですよね。

nkayo
質問者

お礼

ありがとうございます。 なるほ。ど・・・・そういう方法もありますね。 参考になりました。 ありがとうございました。

  • comv
  • ベストアンサー率52% (322/612)
回答No.5

こんにちは >う~~ん。。。うまくいきません。 >12行目にある式には何か式が入るのでしょうか? ???式は記載していますが??? 当然  A12には 集計したい担当者名  B12には 集計したい商品名 を入力した結果となります 直接集計(あまり意味はないと思いますが)なら =SUMPRODUCT((A1:A10="担当者名")*(B1:B10="商品名")*C1:C10) となります

nkayo
質問者

お礼

再びありがとうございます。 大きな勘違いをしていました、、、 出来ました^^ ありがとうございました。

  • comv
  • ベストアンサー率52% (322/612)
回答No.4

こんにちは    A   B   C 1 担当1 商品2 5000 2 担当2 商品3 8500 :  :   :  : 10 担当1 商品1 3500 11 12 担当名 商品名 式 =SUMPRODUCT((A$1:A$10=A12)*(B$1:B$10=B12)*C$1:C$10) で試してみてください

nkayo
質問者

お礼

ありがとうございます。 う~~ん。。。うまくいきません。 12行目にある式には何か式が入るのでしょうか?

  • shy00
  • ベストアンサー率34% (2081/5977)
回答No.3

DSUMでは出来ませんか? やり方については参考URLを貼っておきます

参考URL:
http://homepage1.nifty.com/kenzo30/ex_kisotyu/ex_ks_tyukyuxb3_2.htm#データベース関数(DSUM、DAVERAGE関数)
nkayo
質問者

お礼

ありがとうございました。 ホームページとてもわかりやすく参考になりました!

回答No.2

 2つ以上の条件付き合計は、配列数式の出番ですね。 =SUM((A1:A10="担当者の名前")*(B1:B10="商品の名前")*C1:C10)  でCtrl+Shift+Enterです。  また、ピボットテーブルを使って、項目ごとの合計を一覧にするやり方もあります。

nkayo
質問者

お礼

ありがとうございます。 配列関数が難しいですね・・・ Ctrl+Shift+Enterの意味は??? すみません、、、勉強不足で・・

noname#190440
noname#190440
回答No.1

データベース関数のDSUMで求めたらどうでしょう?

nkayo
質問者

お礼

ありがとうございます。 DSUM関数なねですね。。。

関連するQ&A

専門家に質問してみよう