3

我有一个这样的数据表:

     a    b    c    d
1    1    2    3    4
2    5    6    7    8
3    9    10   11   12
4    13   14   15   16

我想要一个找到最大值(16)并返回其行号(在本例中为4)的公式。我怎么做?

INDEX(a1:d1,MATCH(MAX(a1:h4),a1:h4,0),)不工作:(

4

5 回答 5

2

工作表布局::
B1:E1列标题
A2: A5:行标题
B2:E5:数据

数组公式:

{MAX(IF(B2:E5=MAX(B2:E5);ROW(B2:E5)-1;""}

由于问题最初要求“d”作为结果,相应的数组公式如下:

{=OFFSET(A1;MAX(IF(B2:E5=MAX(B2:E5);ROW(B2:E5)-1;""));0)}

Shift-Ctrl-Enter 在公式窗口中插入。花括号由 Excel 插入,而不是由用户插入。

于 2013-02-18T15:54:27.570 回答
2

还有一位谦虚的女孩的意见:

=ADDRESS(ROW(OFFSET(A1,MAX(IF(B2:E5=MAX(B2:E5),ROW(B2:E5)-1,"")),0)),COLUMN(OFFSET(A1,0,MAX(IF(B2:E5=MAX(B2:E5),COLUMN(B2:E5)-1,"")))),4)- 但通过 , 输入为ARRAY公式Ctrl+Shift+Enter将返回E5(假设@Jüri Ruut区域),这只是所需单元格的地址。

于 2013-02-18T16:14:48.353 回答
1

希望这个附加的截图是不言自明的?

在此处输入图像描述

于 2013-02-18T15:52:47.213 回答
0

好的,我会编写一个这样的宏:遍历每一行 - 找到该行的最大值。将值存储在数组中,然后再次计算最大值。

可能它也适用于公式。只需计算单独列中每一行的最大值,然后计算该列的最大值。

于 2013-02-18T15:39:38.270 回答
0

试试这个数组公式

=MIN(IF(A1:H4=MAX(A1:H4),ROW(A1:H4)))

确认CTRL+SHIFT+ENTER

如果在 A1:H4 中多次出现 MAX 值,那么公式将为您提供 它出现的第一行

于 2013-02-18T16:07:23.977 回答