MaxIf与关联的行信息?

我使用数组公式来确定行数据的特定子集的最大值:

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

这工作正常&得到我在C的最大值,其中A =“somestring”。

现在,我想返回与这个“最大”行相关的string的其他列值。 直觉上,我想我可能需要抛弃布尔逻辑乘法策略,因为string值正在涉及。 什么是最好的/最干净的方式去呢?

尝试这个:

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

在此示例中,要将值设置为B列。

假设你对D列中的string感兴趣,这将工作:

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

请注意,因为索引在行()上,索引列需要从1开始,例如D1:D100。