2017-07-19 66 views
0

我想返回当前期间得分最高的单元格的地址。它应该是D4,但公式返回D3。错误的地址返回索引匹配最大值如果功能

任何想法如何解决公式?

= CELL( “ADDRESS”; INDEX(表6 [得分]; MATCH(MAX(IF(表6 [时段] = D8;表6 [得分]));表6 [得分]; 0)))

Problem illustration

+0

你需要数组输入公式,这意味着按Ctrl + Shift确认它+输入,而不仅仅是输入。如果正确完成,Excel将用花括号{}包围公式。 (不要手动添加) – tigeravatar

+0

'D4'和'D3'在您的表格中得分相同。因此,Excel将默认采用max的第一次出现,这就是为什么它会返回D3。 – Jsleshem

+0

确保公式考虑到标题行。 –

回答

1

你有你的计算分解成两个步骤。首先,使用MAX()数组函数或者如果您使用内置MAXIFS()函数的Excel 2016,查找给定时间段的最大分数。接下来,在表格的开头添加一个新列,用于连接日期和分数以创建唯一ID。然后,您可以使用带有索引的CELL()函数,并在该新列上匹配。

enter image description here

“得分最高”:

=MAXIFS(Table5[Score],Table5[Period],D8) 

“单元格地址”:

=CELL("address",INDEX(Table5[Score],MATCH(D8&D9,Table5[Lookup ID],0),1)) 
+0

谢谢!只是我需要做这项工作的提示 –