如何使用 Excel Offset 函数,其中参考单元格是公式输出?

如何使用 Excel Offset 函数,其中参考单元格是公式输出?

我有一个公式 =OFFSET($AL$5,12,0),它可以从 AL 列中得到我想要的值。我想让“$AL$5”部分动态化,并查找以匹配 F 列中的相同值。

=(CELL("地址",INDEX(AL:AL,MATCH(F2,$AL:$AL,0)))) 输出 "$AL$5"

但是当我尝试组合这两个公式时,Excel 出错:=OFFSET(CELL("address",INDEX(AL:AL,MATCH(F2,$AL:$AL,0))),12,0)*100

有人知道怎么做吗?提前谢谢!

答案1

如果=(CELL("address",INDEX(AL:AL,MATCH(F2,$AL:$AL,0))))输出“$AL$5”,则输出仍为文本,而不是真正的单元格地址。为了将其转换为单元格地址,您需要用 Indirect() 将其包裹起来。

但是由于您已经在使用 Index/Match,因此不需要将单元格地址转换为文本,然后再将其转换回单元格地址。

索引返回一个范围,您可以在偏移量内使用它。

或者更好的是:由于您似乎从 Index 找到的单元格偏移了 12 行,因此您不妨直接将其构建到 Index 语句中。将 12 行添加到 Match 找到的数字上。

最终公式为

=INDEX(AL:AL,MATCH(F2,$AL:$AL,0)+12)*100

用文字表示:在 AL 列中,查找 F2 中指定的值,向下移动 12 行,然后将该值乘以 100。

如果这对您有用,请告诉我。

相关内容