2016-09-07 4 views
0

ゼロ以外の範囲で最大または最小のN値を平均化しようとしています。平均値と同様の式が最大値のため、SMALLの代わりにLARGEで使用することができますA.中3つの最小値Excel:ゼロを除いた、範囲内の最大(または最小)N値の平均

=AVERAGE(SMALL(A:A,{1,2,3}))

:私はこの式を使用しています、私のデータが列Aにあると言います。どのように非ゼロで最小の(最大の)N値を見つけるために数式を適合させることができ、それらの平均しかないのですか?おそらく、配列式、IFs、および"<>0"で演奏しなければならないかもしれませんが、私はExcelの構文に慣れていません。

事前に感謝します。

答えて

0

すべての数字がゼロ以上であれば、ゼロである値の数をチェックし、その上にあなたのSMALLを起動します。

=AVERAGE(SMALL(myRange,{1,2,3}+COUNTIF(myRange,0))) 

一部の値がゼロより小さいかもしれない場合は、

=AVERAGE(SMALL(IF(A:A<>0,A:A),{1,2,3})) 

は、ENTERに当たっている間にCTRL + SHIFTを押し続けて配列の式として入力します。

+0

ありがとうございました!私はちょうどあなたが提案した数式をテストしたが、3つ以下の非ゼロがある(実際には境界線がある)場合を除いて、どちらもうまくいきます。その場合、数式はエラーを返します。 これを連結してIFERRORを固定し、すべてが失敗した場合に最良の2、または1つの最良の非ゼロ、最終的なダミー値を徐々にチェックしました。それは少し優雅に見えますが、動作します。代わりがありますか? IFERROR(AVERAGE(小)(A:A、A、1,​​2)+ COUNTIF(A:A、A 1,2,3)+ COUNTIF(A:A、0))) (A:A、0)))、MAX(A:A)))) ' – st1led

+0

これが何かの場合は、(A:A、0)))、IFERROR(AVERAGE = IFERROR(AVERAGE(小)(IF(A:A <> 0、A:A)、ROW(間接(「1:0」)を入力してこの式を試してみてください。 "&MIN(3、COUNTIFS(A:A、" <> 0 "、A:A、" <> "))))))"非ゼロのエントリはありません "効率的ではありませんが、これは揮発性であるため、効率が低下する可能性がありますが、平均値までの希望数が変わると一般化するのが簡単です。 –

関連する問題