0

この配列関数が「FINAL DATA」AE列に(ゼロ以外の)最小値を出力するようにしようとしています。この式に構造上の誤りがあることがわかりますか?

       =IF($C$4="All EMEA",

MIN(IF('FINAL DATA'!$2:$AE$250000<>0,

('FINAL DATA'!$J$2:$J$250000=$C$4)*('FINAL DATA'!$E$2:$E$250000=$E$4)*( 'FINAL DATA'!$AE$2:$AE$250000))),

MIN(IF('FINAL DATA'!$AE$2:$AE$250000<>0, 

('FINAL DATA'!$K$2:$K$250000=$C$4)*('FINAL DATA'!$E$2:$E$250000=$E$4)*( 'FINAL DATA'!$AE$2:$AE$250000)))

)
4

4 に答える 4

2

<>0 を使用すると、ゼロと空白が削除されるため、問題はありません.....[ただし、空白のみを削除し、有効な戻り値としてゼロを使用する場合は、<>""を使用する必要があります]

条件を数値範囲で乗算することはできません。これは、乗算によって条件が満たされていない行がゼロになるためです。代わりに、次のように複数の IF を使用します。

=MIN(IF('FINAL DATA'!$AE$2:$AE$250000<>0,IF('FINAL DATA'!$J$2:$J$250000=$C$4,IF('FINAL DATA'!$E$2:$E$250000=$E$4,'FINAL DATA'!$AE$2:$AE$250000))))

于 2012-10-19T16:58:42.780 に答える
1

2 行目、!$2 があり、列が指定されていません。

MIN(IF('最終データ' !$2 :$AE$250000<>0,

また、範囲に対して単一の If 比較を実行しようとしているように見えますが、これはあなたが使用しようとしている方法では機能しないと思います。

于 2012-10-19T16:38:10.037 に答える
1

Barry は、コアの問題を特定しました (テストは MIN 関数に img 0 を返します)。

これを解決する式(まだ配列式)のリファクタリングがあり、かなり短いです

=MIN(IF(($S:$S<>0)*($E:$E=$E$4)*(IF($C$4="All EMEA",$J:$J,$K:$K)=$C$4),
 ($S:$S)))

0範囲内に0を超える修飾値がない場合、これは(修正された場合の元のフォーマウルと同様に)返されることに注意してください

于 2012-10-19T19:22:54.660 に答える
0

IF()配列数式で関数を使用すると、ゼロを削除できます。次の点を考慮してください。

       A
Row  -----
 1       0
 2       7
 3       5
 4       6
 5        
 6       3

if文の部分でand空白セルが消去されるので、配列数式=MIN(IF($A$1:$A$6>0,$A$1:$A$6))が返ってきます。30>0

于 2012-10-19T16:37:02.403 に答える