2016-11-17 76 views
0

我有以下公式可以从我的数据中返回最大值/面积: = INDEX($ 1:$ 1,0,MATCH(MAX(2 :2),2:2,0))在索引匹配公式中使用动态范围返回最大值

|Col A | Col B | Col C | ETC. 
1 |  | Area 1 | Area 2 | 
2 |Topic1 | 50.57 | 60.36 | 
3 |Topic2 | 467.8 | 636.8 | 
ETC. 

在这种情况下,公式将根据索引函数中使用的行返回60.36 /区域2。

但是,不能保证所有主题都会出现,所以我想使用动态行引用而不是将其固定在例如2:2 - 即不是简单的2:2它会查找Topic1,找到该行的最大值并返回区域或值(我将需要两者)。我试过用
= INDEX($ 1:$ 1,0,MATCH(MAX(MATCH(“Topic1”,A:A):MATCH(“Topic1”,A:A)),(MATCH (“Topic1”,A:A):MATCH(“Topic1”,A:A)),0))
没有成功。

我强烈怀疑我错过了明显的东西,但任何帮助将不胜感激。

在此先感谢。

编辑:各种回答我自己的问题。如果它帮助其他人以更好的格式(每行:Topic1 | Area1 | Value)重组我的数据并使用= MAXIFS(C:C,A:A,F1)返回值并且= INDEX(B:B ,MATCH(MAXIFS(C:C,A:A,A1),C:C,0))返回区域名称。

EDIT2:可以确认XOR LX解决方案也可以工作 - 谢谢!

回答

0

=INDEX($1:$1,0,MATCH(MAX(INDEX($1:$1048576,MATCH("Topic1",A:A,0),0)),INDEX($1:$1048576,MATCH("Topic1",A:A,0),0),0))

使用的零作为部分内的column_num参数:

INDEX($1:$1048576,MATCH("Topic1",A:A,0),0)

力发挥功能以返回到整行的参考。也就是说,在这种情况下,上述解析为:

INDEX($1:$1048576,2,0)

这是在这里等同于:

$2:$2

INDEX此属性的详细信息,请参见here

您也可以使用指整个工作表:

$A:$XFD

代替:

$1:$1048576

虽然Excel将在任何情况下将其转换为后者一旦公式承诺。

Regards