[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『集計のキー2つ設定』(ぺり)
集計を使って合計を算出したいのですが、キーを2つ設定することは可能でしょうか?
【例】 A a 10 A b 20 A b 10 B a 5 B a 10
この場合、結果として以下のようにしたいのですが。。
A a 10 A b 30 B a 15
分かりずらくてすみませんが、よろしくお願いします。
作業列を使って関数で出して見ました。 D列とE列が作業列です。
D1=A1&B1 E1=IF(COUNTIF($D$1:D1,D1)=1,ROW(A1),"")
D1とE1をこのようにして、下にコピーしておきます。
A列 B列 C列 D列 E列 1 A a 10 Aa 1 2 A b 20 Ab 2 3 A b 10 Ab 4 B a 5 Ba 4 5 B a 10 Ba 6 7 8 9 10 A a 10 11 A b 30 12 B a 15 13
A10=IF(COUNT($E$1:$E$5)<ROW(A1),"",INDEX(A$1:A$5,SMALL($E$1:$E$5,ROW(A1))))
としてCtrlとShiftキーを押しながらEnterで確定。 B10にそのままコピーします。
C10=IF(B10="","",SUMPRODUCT(($A$1:$A$5=A10)*($B$1:$B$5=B10)*($C$1:$C$5)))
と入力して、A10:C10をそのまま下にコピーするとこのようなりますが、 いかがでしょうか。 (sato)
データ、集計で処理するのでしたら、上位のA、Bの列をグループの基準として処理した後に 再度、a、bの列を基準に処理しますと、表示方法は別として、集計できるように思います。(LOOKUP)
◆こんな方法もありますよ! A B C 1 A a 10 2 A b 20 3 A b 10 4 B a 5 5 B a 10 6 7 8 9 9 10 A a 10 11 A b 30 12 B a 15
A10=IF(ROW(A1)>SUMPRODUCT((MATCH($A$1:$A$9&$B$1:$B$9,$A$1:$A$9&$B$1:$B$9,0)=ROW($A$1:$A$9))*($A$1:$A$9<>"")),"",INDEX(A$1:A$9, 100-LARGE(INDEX((MATCH($A$1:$A$9&$B$1:$B$9,$A$1:$A$9&$B$1:$B$9,0)=ROW($A$1:$A$9))*100-ROW($A$1:$A$9),0),ROW(A1)))) ★A10の式を、A10:B12 にコピーします!
C10=IF((A10<>"")*(B10<>""),SUMPRODUCT(($A$1:$A$9=A10)*($B$1:$B$9=B10)*$C$1:$C$9),"") ★下にコピー
◆作業列をつくらなかったので、式が長くなりましたが!いかがでしょうか! (Maron)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.