如何在 Excel 中获取命名范围的单元格引用?

如何在 Excel 中获取命名范围的单元格引用?

我解决了这个问题,但我想知道是否有更好的方法。我有一列一些命名范围(“NAME”),我想要一个右边的公式来查找命名范围并提供单元格引用(“C352”)。

我最终用这个解决了它:

=CHAR(64+COLUMN(INDIRECT(C2, FALSE)))&ROW(INDIRECT(C2, FALSE))

CHAR 部分是将列号 (3) 转换为字母 (C),并且它对 Z 列之后的部分不起作用。

这不应该是最好的方法。我看到了一些 VBA 解决方案,这是唯一可能做得更好的方法吗?

答案1

=ADDRESS(ROW(INDIRECT(C2)),COLUMN(INDIRECT(C2)),4,1)

怎么运行的

  • INDIRECT(C2)返回由 指定的引用地址C2。本例中为命名范围所引用的范围。
  • ROW( ... )返回指定单元格的行
  • COLUMN( ... )列同上
  • ADDRESS( r, c, 4, 1)返回地址或行r、列c4表示相对(即没有$1表示A1样式。因此 将是符号ADDRESS(ROW( ... ),COLUMN( ... ),4,1)中命名范围的地址A1

答案2

如果您可以接受参考文献中的$,则可以使用:

=CELL("address",INDIRECT(C1))

或者:

=SUBSTITUTE(CELL("address",INDIRECT(C1)),"$",)

放弃美元

答案3

=地址(行(间接(C2,FALSE)),列(间接(C2,FALSE)),绝对值

在哪里绝对值为 1 表示返回绝对地址(例如“ $C$352”),为 4 表示返回相对地址(例如“ C352”),为 2 表示“ C$352”,为 3 表示“ $C352”。(绝对值如果省略,则默认为 1(即绝对值)。

相关内容