• ベストアンサー

【EXCEL】sumif関数の連発以外ですっきりした関数

はじめまして。いろいろ調べましたが、いい方法が見つからなかったので教えてください。EXCEL2002です。 今、以下の表があります。  A     B    C    D    E    F    G    H     I    J 1日付  商品  数量  金額  合計  |日付  商品  数量  金額  合計 2     aaa    3   12,000      |     bbb    4    20,000 3 9/1  bbb    1    5,000  24,000|9/4   ccc   5    17,500  41,500 4     ccc    2    7,000      |     aaa    1    4,000 ----------------------------------------------------------------------- 日付と金額の2~4行目は結合されています。 A~E列のブロックが右に16個あり(今は2個しか書いてませんが)、aaa商品の個数と金額を抽出したいのですが、各ブロックでsumif関数を使い、 16個合計すれば出るのですが、もっとすっきりした関数はありますでしょうか? 実はこの16個のブロックが縦にいくつもあり、関数をかなり入れてるせいかファイルサイズが大きくなってしまってるので。 宜しくお願いします。

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

  • ベストアンサー
  • goo39
  • ベストアンサー率36% (13/36)
回答No.2

SUMとIFの配列式でもすっきり出来ます。 数量は=SUM(IF(B2:BY4="aaa",C2:BZ4))を配列式にして {=SUM(IF(B2:BY4="aaa",C2:BZ4))} 金額も同様に=SUM(IF(B2:BY4="aaa",C2:BZ4*D2:CA4))の配列式 {=SUM(IF(B2:BY4="aaa",C2:BZ4*D2:CA4))}

snycom
質問者

お礼

先ほど、補足で書いたのですが、配列数式について調べてみたら、goo39さんのとおりでできました! いろいろ勉強になります。 ありがとうございました。

snycom
質問者

補足

お返事ありがとうございます。 数量の場合で、配列式にして中かっこ{}のところがわからないのですが、普通に=SUM(IF(B2:BY4="aaa",C2:BZ4))を入力してみたところ、 #VALUEになってしまいます。 ですが、数式バーの関数(fx)のところをクリックして引数をみてみると、数式の結果は正しい値が返っていました。 どうしてでしょうか?

その他の回答 (1)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

範囲はA1:CB4として、 数量=SUMPRODUCT(($A$2:$BY$4="aaa")*($C$2:$BZ$4)) 金額=SUMPRODUCT(($A$2:$BY$4="aaa")*($D$2:$CA$4))

snycom
質問者

補足

お返事ありがとうございます。 SUMPRODUCT関数を使うのですね。 ですが上記のとおりにすると#VALUEになってしまいます。 どうしてでしょう?

関連するQ&A