【发布时间】:2026-02-08 23:15:02
【问题描述】:
我在一列中有一个范围列表。范围是动态命名范围的一部分,采用文本格式。
$A$1:$A$5
$A$6:$A$10
$A$11:$A$15
...
目的是SUM动态范围中每个范围之间的值,因为调用动态范围应该遍历所有范围。但是,与=SUM(INDIRECT(<dynamic_range>) 无关。此公式仅返回一个与动态范围中的第一个范围不对应的值。
例如,返回第一个范围的总和,然后在下一行,返回第二个范围的总和,依此类推,直到动态范围结束。
我试图将其保留为公式而不是 VBA。
【问题讨论】:
-
SUM()将始终返回一个值。你能解释一下你想要做什么吗? -
此外,如果范围与结果在同一张表中,则不需要 INDIRECT(易失性),但您可以改用 INDEX。
-
@Harun24HR 目的是根据动态范围内的范围对 A 列中的值求和。基本上,通过动态范围返回第一个范围的总和,第二个范围的总和,依此类推。
-
@P.b 我将如何使用 INDEX 来解决这个问题?
-
@Henry 您的命名范围是静态的吗?即第一个范围总是 $A$1:$A$5 吗?还有 3 个范围名称是什么?
标签: excel excel-formula