我想在我的函数中引用另一行的整行作为参数,通常我会使用如下方法:OtherSheet!27:27
但是,如果 27 是存储在其他单元格中的动态值,该怎么办?
例如,我有如下 MATCH 函数:
=MATCH(B6;OtherSheet!27:27;0)
并将值 27 存储在单元格 A1 中。当我将值更改为 28 时,我希望我的 MATCH 函数如下所示:
=MATCH(B6;OtherSheet!28:28;0)
我应该用什么来实现这个目标?
答案1
你正在寻找的是 Excel 的INDIRECT
功能它允许引用指定为文字值的范围,无论它们是存储在其他地方、按字面传递还是两者的组合。因此,
=MATCH(B6; INDIRECT("OtherSheet!" & A1 & ":" A1); 0)
将评估为
=MATCH(B6; OtherSheet!27:27; 0)
如果单元格 A1 包含值 27。
答案2
=MATCH(B6;OtherSheet!27:27;0) 是一个搜索函数,它应该返回单元格 27 中的值,但可能不是 27。
将 (B6;OtherSheet!27:27;0) 更改为 (B6;OtherSheet!A1:A1),以返回存储在单元格 A1 中的值。