Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 插入行的总和/计数公式自动调整_Excel - Fatal编程技术网

Excel 插入行的总和/计数公式自动调整

Excel 插入行的总和/计数公式自动调整,excel,Excel,希望创建一个总和和计数公式,该公式将自动调整插入范围内的新行 例如,如果我在单元格D55中有公式=SUM(D17:D54)。每次我在该范围内插入新行时,我都需要更改公式的顶部范围以考虑它 有没有一种方法可以编写一个自动调整自己的公式,这样每次添加新行时,我就不需要更改求和公式了?我想人们是误解了。您在范围的顶部插入了一行,对吗 如果是这样,我建议将范围格式化为表。这样,您的桌子看起来就像这样: 求和函数的形式很简单: =SUM([Data]) 当在7上方插入一行时,所有内容都会自动更新 您可

希望创建一个总和和计数公式,该公式将自动调整插入范围内的新行

例如,如果我在单元格D55中有公式
=SUM(D17:D54)
。每次我在该范围内插入新行时,我都需要更改公式的顶部范围以考虑它


有没有一种方法可以编写一个自动调整自己的公式,这样每次添加新行时,我就不需要更改求和公式了?

我想人们是误解了。您在范围的顶部插入了一行,对吗

如果是这样,我建议将范围格式化为表。这样,您的桌子看起来就像这样:

求和函数的形式很简单:

=SUM([Data])
当在7上方插入一行时,所有内容都会自动更新


您可能想看看这个。这将是我的建议。。。将数据包装到表中。这将创建一个结构化但灵活的参考

正如这里所指出的,也是根据经验,“由于表数据范围经常变化,结构化引用的单元格引用会自动调整。例如,如果您在公式中使用表名来计算表中的所有数据单元格,然后添加一行数据,则单元格引用会自动调整。”

请尝试

D55: =SUM(INDIRECT("D17:D"&ROW()-1))
这应该根据添加的行进行动态调整,因为在第17行添加行时,
D17
处的当前值将移动到
D18
,而
D17
处不存在任何值<代码>间接()
ROW()-1
确保即使在公式前面添加行,也会考虑这些行

编辑:我应该补充一点,这可以应用于任何公式。只需将公式的范围部分替换为
间接

还有一个简单的解释:
间接
从字符串创建Excel引用,这样您就可以使用动态对象构造公式。公式的
部分充当动态因子,它完全取决于您添加的行数,但与您添加新行的位置无关。

它已经自动调整:如果您在
17
54
之间插入新行,则您的公式(在单元格
D56
中)会变成
=SUM(D17:D55)
@pnuts,OP说
我在D55单元格中有公式,你的公式
=SUM(D17:D55)
会不会创建循环引用?你知道在哪个版本的Excel中添加了功能=SUM([ColumnHeader])?这在Excel 97或2000中不起作用。这似乎也不能回答问题,因为OPs问题是从第17行(而不是第2行)开始的。这很有效,在Excel 97和2000中进行了测试。对于使用此公式的任何人,请将
“D17:D”
引用调整为您自己的起始单元格和列(例如
“G3:G”
)。另外,假设您在求和的数据底部和公式之间留了一个空行,然后将
-1
替换为
-2
。回答得好。谢谢阿兰,很高兴你喜欢我建议的解决方案!