所以我有这组列,比如说 AZ。每个列都有数千条记录。我试图弄清楚以下问题:在 BZ 列中找到最高值并检索该记录的 A 列的值。听起来很简单,但到目前为止,我还没有找到不需要 VBScripting 的解决方案。
答案1
不使用 vba 的最佳方法是使用辅助列:
在 AA2 中输入:
=MAX(B2:Z2)
并抄下来。
然后您可以使用 INDEX/MATCH 来找到正确的行:
=INDEX(A:A,MATCH(MAX(AA:AA),AA:AA,0))
使用辅助列后,就不再需要数组类型公式了。如果数据点数量如您所建议的那样多,数组公式会变得很慢,甚至可能导致 Excel 崩溃。
如果您想尝试用一个公式来完成它,请尝试以下操作:
=INDEX($A$2:$A$778,AGGREGATE(15,6,(ROW($A$2:$A$778)-ROW($A$2)+1)/(MAX($B$2:$Z$778)=$B$2:$Z$778),1))
更改行和列以匹配您的数据集。