2016-04-01 2 views
1

の対応する値を式を使用して返します。列Aの各固有値に対して列Cの最大値を求める列Bの対応する値を列Cの最大値に戻すのが好きです。出力は、2番目の画面キャプチャと同様にデータの要約にする必要があります。私は運Get the maximum values of column B per each distinct value of column AMicrosoft Excel - 列Aの各固有値に対して、列Cの最大値とB

original data

desired result

これは数式で可能で、このリンクにピボットテーブル、条件付き書式設定やヘルプを試してみましたか?最大数はAGGREGATE()関数を使用するためので

答えて

0

=AGGREGATE(14,6,$C$2:INDEX(C:C,MATCH(1E+99,C:C))/($A$2:INDEX(A:A,MATCH(1E+99,C:C))=I2),1) 

次に容量にシンプルSUMIF()を見つけるために:

=SUMIFS(B:B,A:A,I2,C:C,K2) 

enter image description here

をAGGREGATE() Excel 2010で機能が導入されました。


他のバージョンの

、それほど強固な配列数式MAX()(IF)はAGGREGATEの代わりに動作します:

編集を終了するとき、それはCtrl + Shift + Enterで確認しなければならない配列数式なので
=MAX(IF($A$2:INDEX(A:A,MATCH(1E+99,C:C))=I2,$C$2:INDEX(C:C,MATCH(1E+99,C:C)))) 

モード。正しく実行されると、Excelは配列式を表す式の周りに{}を自動的に挿入します。

もう、あなたが最新のOffice 365を持っているか、オンラインアプリ以下の非CSE MAXIFSを(使用している場合)も動作します:

=MAXIFS($C$2:INDEX(C:C,MATCH(1E+99,C:C)),$A$2:INDEX(A:A,MATCH(1E+99,C:C)),I2) 

は、これら二つは(AGGREGATEほど堅牢ではない)という点で、彼らデータにエラーがある場合は破損します。 AGGREGATE()はそれらを無視します。

0

ここでは、テーブル内の配列式を使用する別のオプションがあります。私は自分のシートのA1から始めることはしなかったので、画像には私のセル/行IDが表示されます。

Array formula using Tables, Max, Lists, etc

セルM17:=IFNA(INDEX([Host], MATCH(0, COUNTIF($M$16:M16, [Host]), 0)),"Unknown") + Ctrl + Shift + Enter

セルN17:=MAX(IF([Host]=[@UniqueHost],[Duration])) + Ctrl + Shift + Enter

細胞O17:=IFNA(INDEX([Capacity],MATCH([@UniqueHost]&[@MaxDuration],[Host]&[Duration],0)),0) + Ctrl + Shift + Enter

関連する問題