• ベストアンサー

エクセル オートフィルタを使わないで計算したい

例えば A列には1,2,3、・・・とランダムに数字が入っていて C列にも1,2,3・・・とランダムに数字が入っています。 B列D列も計算式を用いてランダムに数字が入っています。 なので2つのデータを並べています。 やりたいことは 「A列とC列に「2」ならば右に隣接する整数の数を求めたい」です。 オートフィルタを使うと1つのデータしか取り出せなくなってしまいます。 A列の「2」に隣接するB列の整数の合計と C列の「2」に隣接するB列の整数の合計の合計額がほしいです。 なにかいい方法はありますでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • x0000x
  • ベストアンサー率52% (67/127)
回答No.1

SumIf関数で集計できます。 =SUMIF(範囲,条件,合計範囲) たとえば、以下はA列が2である場合のB列の合計を集計します。 =SUMIF(A1:A10,"2",B1:B10) 同様にC列は以下 =SUMIF(C1:C10,"2",B1:B10)

sdfdfadgh
質問者

お礼

できました。 大変参考になりました。ご回答ありがとうございます。

その他の回答 (4)

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

この質問は、=SUMIF()や=SUMPRODUCT()の条件をつけて、加算したいという質問だと思うが、文章ばかり長くて、判りにくい。 良くある質問なので1-2行で主旨はわかる。 >B列D列も計算式を用いてランダムに数字が入っています。 計算式で出されているセルの値の2も、入力した2も関数で合計を考える上では関係なく、書く必要ない。 >ランダムに数字が入っています これも数値は通常色々な数字が入るのは、暗黙の了解で、書く必要なし。却って乱数などを思い浮かべてミスリードさせる。 ーー フィルタで考えてみると 例データ コード 計数 a 2 b 1 c 2 a 1 c 2 d 1 a 3 c 1 d 2 ーー その下の行のB列に =SUBTOTAL(9,B1:B10) と入れておく。 A1:D10を範囲指定して データーフィルターオートフィルターコードを▼をクリック。 「a」をクリック 「a」だけに絞られて 結果 B11は6 が出ます。 >オートフィルタを使うと1つのデータしか取り出せなくなってしまいます の意味がわからない。 ーー 例データ コード 分類 計数 a X 2 b Y 1 c Z 2 a X 1 c G 2 d X 1 a X 3 a Z 1 d U 1 なら データーフィルターオートフィルターA列のコードを▼をクリック。 「a」をクリック 「a」だけに絞られてB11は7 B列の▼をクリック。Xをクリック。 Aretu「a」、B列「X]の分だけ残り、B11は6 こういう本来の使い方もあると思うが。 ーー 関数を使って出したいということですか。関数という言葉は出てきてないが。

sdfdfadgh
質問者

お礼

大変参考になりました。ご回答ありがとうございます。

  • nobu555
  • ベストアンサー率45% (158/345)
回答No.4

>整数の合計 小数点以下切り捨てでよいのでしたら 以下の方法で =SUMPRODUCT(INT((A1:A10=2)*(B1:B10))+INT((C1:C10=2)*(D1:D10))) 範囲は仕様に合わせて変更してください。

sdfdfadgh
質問者

お礼

大変参考になりました。ご回答ありがとうございます。

  • suekun
  • ベストアンサー率25% (369/1454)
回答No.3

そのまま、オートフィルターを利用するとして、 例えばE列にA.C列がそれぞれ「2」ならば「○」否なら 「""(空白)」を表示する様にIFとANDで論理式を組んで 最終行までフィルコピーすれば、あとはオートフィルターで ○を選択するだけで全て表示されると思いますよ。

sdfdfadgh
質問者

お礼

大変参考になりました。ご回答ありがとうございます。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

ご質問の条件が合致していませんので、相違していましたら読み捨て下さい。 =SUMIF(A:A,2,B:B)+SUMIF(C:C,2,D:D)

sdfdfadgh
質問者

お礼

大変参考になりました。ご回答ありがとうございます。