MaxIf与相关的行信息?

时间:2011-05-11 13:35:53

标签: excel array-formulas

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

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

这很好用&得到我在C中的最大值,其中A =“somestring”。

现在,我想返回与此“max”行关联的其他列值,这些值是字符串。直觉上我认为我可能需要抛弃布尔逻辑乘法策略,因为字符串值会涉及到。什么是最好/最干净的方法?

2 个答案:

答案 0 :(得分:1)

假设您对D列中的字符串感兴趣,这将起作用:

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

请注意,由于它是Row()上的索引,因此您的索引列需要从1开始,例如D1:D100。

答案 1 :(得分:1)

试试这个:

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

在此示例中,您想要值的列设置为B.