• 締切済み

エクセルで

質問があります! オートフィルタを使った時の表計算の表示方法です。 例えば A 10 B 10 C 10 A 20 B 20 の時に、オートフィルタを使用して、Aを選択します。 そこでSUMを使って合計をだすと、30になります。 そのままそれを、他シートに飛ばします。 (他シートに飛ばしたいセルを選択し計算式(=(30の入ってるセル))を入れます。) 次にBを選択して、SUMを使って合計を出し同じように他シートに飛ばそうとします。 すると先ほど合計を求めた、Aの30という数字が0になってしまいます。当然他シートに飛ばしたものも。 それをAの合計はそのまま表示させたまま、Bの合計も求める方法はあるのでしょうか?? 今は、やり方がわからないので、コピー・形式を指定して貼り付け・値、をしています。 すごく手間がかかるのでなんとか方法がないのかと思って、色々調べたのですが。。。 わかりにくいかと思いますが、よろしくお願いします。

みんなの回答

  • 134
  • ベストアンサー率27% (162/600)
回答No.5

ごめんなさい。 カッコの数が変でした。 =sum(if((A1:A100=F1)*(B1:B100=G1)*(C1:C100=H1),D1:D100,"")) でした。 D100の後のカッコ閉じは不要です。

  • 134
  • ベストアンサー率27% (162/600)
回答No.4

「補足」を読みますと、C列も選択肢に入るようですか? 僕なら… ですが、D列まで埋まっていますので、1列開けて、F1セルあたりから、設定します。 F1セル…入力規則→リスト でA列データを指定 G1セル…入力規則→リスト でB列データを指定 H1セル…入力規則→リスト でC列データを指定 F1~H1 で文字をとりあえず指定しておきます。 I1セル… =sum(if((A1:A100=F1)*(B1:B100=G1)*(C1:C100=H1),D1:D100),"")) (データの最終行を「100」としています。データ量が多いとのことでしたので、適切な数字に変更してください) と入力して、shiftとctrlを押しながら、Enterを押します。  そうすると、3つの条件を併せ持つ値を合計してくれると思います。  なんて手段は いかがでしょう

回答No.3

オートフィルターを使っているのが単にしゅうけいするためだけなら、 関数を使って、合計を出すことができます。 当該の表がSheet1に   A  B 1 A  10 2 B  10 3 C  10 4 A  20 5 B  20 とA列にA、B,C・・・とあって、B列に数字が並んでいるとします。 A列がAである合計を求めたいセルに次の式を入力します。 =SUMPRODUCT((Sheet1!$A$1:$A$5="A")*(Sheet1!B1:B5)) Bの合計は同じ式で"A"のところを"B"とするだけです。 セルの参照範囲は必要に応じて、変えて下さい。

  • sou_tarou
  • ベストアンサー率51% (196/381)
回答No.2

いくつもの項目で集計を取るならピボットを使ってはいかがですか?

  • 134
  • ベストアンサー率27% (162/600)
回答No.1

 ABC 1A10 2B10 3C10 4A20 5B20 すなわち、A列にA~Cというデータ、B列に合計したい数字があるとして、 =sumif($A$1:$A$5,"=A",$B$1:$B$5) としてみるのはいかがでしょうか。

nanach
質問者

補足

んとですねぇ、正確には  A B C D 1 a y o 10 2 b x p 20 3 a y p 30 4 a z p 10 5 □ って感じで、Aで集計してさらにBで集計したもののDの合計値を見たいのです。 たとえば、Aでaを選択し、Bでyを選択すると10と30ですよね? それをオートフィルタで□に集計したとします。合計40。 そのままBでzを選択すると、さきほど集計し合計したyの集計が0になってしまうのです。 それ(40)を残したまま次の集計をして合計するにはどうしたらいいんでしょうか??? 結構量が多いと仮定して、できるだけ早くできるにはどうする方法があるでしょうか??? 本当にわかりにくくてすみません。。。