• ベストアンサー

条件がある列の集計の仕方

数字が入っている列にもうひとつ条件をつけてその合計を求めたいのですが、関数が成り立ちません・・。 A列 B列 C列 D列 A  1      3 B  10  W  10 C  10      1 D  1   W  22  E  5      7 F  5   W 33 B列=1で、C列<>W(C列=0でもいいのかな?)のD列の合計を求めたいのです。 例の答えは、1=3 10=1 5=7となるようにです。 よろしくお願いします。

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

  • ベストアンサー
  • maac777
  • ベストアンサー率50% (43/86)
回答No.1

B列の条件をE1に入れるとして =SUMPRODUCT((B1:B6=E1)*(C1:C6<>"w")*D1:D6) です。

skauranbo
質問者

お礼

たびたび、ありがとうございました。 すごく便利にさらに使いやすくなりました。 データも余分な関数を使用しないので、容量を小さくすることができました。

skauranbo
質問者

補足

ありがとうございました。 期待通りの答えになりました。 しかし、もうひとつ条件が増えてしまいました。 E列にです。 B列=1で、C列<>W、E列<>AのD列合計という感じです。 もしよかったら、教えてください。 お願いします。

その他の回答 (2)

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

毎日この手の質問が出ます。 決まったパターンなので関数の本などの解説が必ずあります。 (1)SUMPRODUCT関数。列の条件が増えても考え方は同じ。 (2)配列数式 (3)DSUM (3)は関数の説明書には詳しく説明されています。 例データA1:D9 第1行目は見出しの意味。列名ではない。 A列 B列 C列 D列 A 1 3 B 10 W 10 C 10 1 D 1 W 22 E 5 7 F 5 W 33 3 1 1 2 1 W 1 ーー 条件を H1:G2に B列 C列 1 <>W 見出しも入れて作る。 意味はB列が1で且つC列がwで無いもの。wは文字列だが””は不要のようだ。 式 =DSUM(A1:D10,"D列",G1:H2) 結果 4 Aー1-3と3-1-1の和。 ーー B列=1で、C列<>W(C列=0でもいいのかな?)のD列の合計を求めたいのです。 例の答えは、1=3 10=1 5=7となるようにです。 間違ってないですか? の意味が良くわからず、上記例では勝手な例にした。 http://kokoro.kir.jp/excel/database-criteria.html ほか多数解説アリ。

skauranbo
質問者

お礼

回答ありがとうございました。 とても役に立ちました。 また勉強していきたいと思います。

  • maac777
  • ベストアンサー率50% (43/86)
回答No.2

=SUMPRODUCT((B1:B6=E1)*(C1:C6<>"W")*(E1:E6<>"A")*D1:D6) となります。 (B1:B6=E1)のような部分は判別式で、条件が成立すれば1(TRUE)を、不成立の場合は0(FALSE)を返します。 つまりどこかに不成立の部分があれば0をかけるのでその行が集計されないわけで、 同じような形式で条件を加えることが出来ます。 「配列数式」で検索すれば沢山の関連情報が得られると思いますよ。

skauranbo
質問者

お礼

丁寧にありがとうございました。

関連するQ&A