从命名范围指定一列是否比计算完整列更有效?

why*_*heq 5 excel excel-formula

在引擎盖Excel你想,如果我用命名范围,对于比如说MAX计算,这将是更有效的如

我有一个命名范围myNmdRang,工作A1:Z20000表的其余部分没有数据。A 列包含一些数值。明天可能会将命名范围的长度调整为 500k 行或仅 100 行。

传统上,我这样做是为了找到第MAX1 列中的内容:

Max("A:A")

以下是否更有效和/或占用更少的存储空间?(这个可以证明吗)

Max(index(myNmdRang,0,1))

For*_* Ed 2

据我了解,您计划使用的命名范围比查看整个列更有效,因为您只需查看较少的条目。


为了节省手动更新字段的时间,您可以执行以下操作:

您可以动态分配名称范围的长度。也就是说它的长度会根据条目的数量自动调整。

假设没有条目,并且 A 列中唯一的内容是数字,您可以使用:

 =offset($A$1,0,0,counta(A:A),26)
Run Code Online (Sandbox Code Playgroud)

counta(A:A) 将查看数字条目的数量并定义命名范围的长度。

因此,您可以为第 1 列创建另一个命名范围(例如 MyFirstRange),而不是使用 max(A:A) 来查看第 1 列的所有内容,或者您​​可以将其定义的范围放入 max 命令中,我会做一些事情像这样:

 define a named range as:
 MyFirstRange = offset($A$1,0,0,counta(A:A),1)

 =Max(MyFirstRange)

 OR if you dont want to name another range

 =max(offset($A$1,0,0,counta(A:A),1))
Run Code Online (Sandbox Code Playgroud)

我知道这并不能完全说明这两种方法的效率。它只是让您无需每天手动重新定义命名范围。我希望这对你有帮助。