2016-10-04 5 views
0

enter image description here私のデータセットは以下のとおりです(下記参照)。列Cは私が得ようとしているものです。列Cに各グループの最も頻繁に発生する値を表示します。 「フルーツ」列に値がない場合は無視する必要があります。タイがある場合、列Cは単に値の1つを選択します。あなたはそれがA1:C8である与えるよう配列数式がC2で**、テーブルを想定し条件付きで最も頻繁に出現するテキストを表示

Group  Fruit Most Freq Occurring 
Group A  Apple Apple 
Group A  Apple Apple 
Group A  Pear Apple 
Group B  Apple Apple 
Group B  Pear Apple 
Group B  Apple Apple 
Group B  Pear Apple 
+0

Iveは、if文を使用してインデックスモードの一致を試みましたが、無駄にしました。 – sqlbg

答えて

3

:必要に応じて

=INDEX(B$2:B$8,MODE(IF(A$2:A$8=A2,IF(B$2:B$8<>"",MATCH(B$2:B$8,B$2:B$8,{0,0})))))

がダウンしてコピーします。

誰値が複数回発生していない場合には、建設はないエラーを行い、ように私はMATCHさんMATCH_TYPEパラメータの標準0の代わりに{0,0}を使用。

代替、非CSEは、セット・アップされています:

=LOOKUP(1,0/FREQUENCY(0,1/(1+COUNTIFS(A$2:A$8,A2,B$2:B$8,B$2:B$8,B$2:B$8,"<>"))),B$2:B$8)

よろしく

**配列数式は、 '標準' の式と同じ方法で入力されていません。 ENTERだけを押すのではなく、まずCTRLとSHIFTを押したまま、ENTERを押します。正しく実行した場合、Excelは式の中に{}の中括弧を挿入します(手動では挿入しないでください)。

+0

私は両方の式を配列として入力しようとしました。両方とも列Cに1つの値しか表示していませんが、データをスポット・チェックすることによって、結果はグループ間でさまざまな値を持つ必要があります。私はテストしましたが、どちらの式も最初のグループに最も頻繁に出現する果物を選択し、後続のすべてのグループに対してその値をC列に適用するだけです。つまり、列C全体がグループAのみを評価しているように見えます。 – sqlbg

+2

指定された手順に従う、つまりセルC2に数式を入力してからコピーしてもいいですか?あなたが "配列として"それらを入力したと言うとき、私はあなたがマルチセル配列の数式を意味するわけではないと信じています。 –

+0

よろしくお願いします。このソリューションは完全に機能します。ありがとう! – sqlbg

関連する問題