我想要获取另一个工作表中指定行中的最大值,其中行号是通过公式检索的。
我可以通过以下公式从名为“Kur”的表中调用所需的行号:
=MATCH(B2,Kur!$A$1:$A$35,0).
这个特定公式给出了数字 23,但当 B2 改变时,这个数字当然会改变。所以公式
=MATCH(B2,Kur!$A$1:$A$35,0)
给我我想要的行号。
=MAX(Kur!23:23)
工作正常,并给出了名为“Kur”的工作表中第 23 行的最大值。但我不知道如何将两者结合起来并使用公式的结果
MATCH(B2,Kur!$A$1:$A$35,0)
作为 MAX 函数的参数。我尝试过:
=MAX(Kur!MATCH(B2,Kur!$A$1:$A$35,0):MATCH(B2,Kur!$A$1:$A$35,0))
=MAX(Kur!MATCH(B2,Kur!$A$1:$A$35,0)&”:”&MATCH(B2,Kur!$A$1:$A$35,0))
=MAX(Kur!&MATCH(B2,Kur!$A$1:$A$35,0)&":"&MATCH(B2,Kur!$A$1:$A$35,0))
但没有成功。非常感谢您的帮助。
答案1
最明显的方法是将地址重建为文本,然后使用 INDIRECT 函数将文本引用转换为实际引用,即:
=MAX(INDIRECT("Kur!" & MATCH(B2,Kur!$A$1:$A$35,0) & ":" & MATCH(B2,Kur!$A$1:$A$35,0)))
不幸的是,间接引用是不稳定的,这意味着它们会一直重新计算,从而减慢您的工作簿速度。另一种非易失性方法是使用 INDEX:
=MAX(INDEX(Kur!1:10000, MATCH(B2,Kur!$A$1:$A$35,0), 1):INDEX(Kur!1:10000, MATCH(B2,Kur!$A$1:$A$35,0), 256)
其中 10000 和 256 是行数和列数的随机大数,但可以根据需要进行调整,或者使用 COUNTA 和另一个 INDEX 函数使其更加通用,以仅引用现有数据。