如何获得动态行号范围

如何获得动态行号范围

是否可以在 Excel 中执行以下操作:

对范围 $A$1:A(B1) 执行一些操作,其中 B1 是单元格 B1 中的值。这样,如果我将公式向下拖动,下面的单元格就会执行针对范围 $A$1:A(B2) 的公式

答案1

是的,写出如下公式:

=INDIRECT(  "$A$1:A"  &  B1)

“$A$1:A”部分将始终保持不变,但该字符串之外的单元格引用就像是“实时”的,当您将其复制到列中时会发生变化。这似乎就是您要找的东西。

人们非常关注INDIRECT()公式,如果在某处插入一行或 4,000 个字符或一列或 43 个字符,公式就不会“中断”,尤其是在稍后删除部分或全部字符的情况下,DIRECT 公式会遭到破坏。但它的另一个主要特点是能够同时使用字符串和活动单元格来构建引用,然后进行解释。

您也可以将它们做得相当复杂。一些字符串,连接到一个活动单元格,连接到更多的字符串,连接到一个甚至不引用特定活动单元格但确实输出某些内容的公式,也许连接到更多的字符串……等等。如果您可以构建一个字符串,最终看起来像一个有效的单元格引用,INDIRECT()那么就可以使用它。

它甚至可以引用命名范围,但您必须记住不要在它周围使用双引号,尽管感觉就像在添加字符串一样。所以INDIRECT(Cell_of_Interest)和不是INDIRECT("Cell_of_Interest")。但是在传递给的字符串中创建命名范围INDIRECT()可能很棘手,所以...如果您必须将命名范围传递给它而不是在编写公式时输入它,那么在实践中可能会...不稳定...。

相关内容