1

配列数式を使用して、行データの特定のサブセットの最大値を決定します。

=MAX(($A2:$A100="somestring")*($C2:$C100))

これは正常に機能し、A="somestring"であるCの最大値を取得します。

ここで、この「最大」行に関連付けられている文字列である他の列値を返します。直感的には、文字列値が関係しているため、ブール論理乗算戦略を捨てる必要があると思います。これを行うための最良/最もクリーンな方法は何ですか?

4

2 に答える 2

1

これを試して:

=INDEX(B1:B100,MATCH(MAX((A1:A100="somestring")*(C1:C100)),(A1:A100="somestring")*(C1:C100),0))

この例では、値が必要な列は B に設定されています。

于 2011-05-11T15:40:11.517 に答える
1

列 D の文字列に関心があると仮定すると、これは機能します。

=INDEX(($D$1:$D$100),MAX(($A2:$A100="somestring")*(ROW($C2:$C100))))

Row() でインデックスを作成しているため、Index 列は 1 から開始する必要があることに注意してください (例: D1:D100)。

于 2011-05-11T15:21:10.797 に答える