【问题标题】:Excel - How to make auto-adjusting range formula for a cell?Excel - 如何为单元格制作自动调整范围公式?
【发布时间】:2021-11-29 22:57:03
【问题描述】:

我想知道是否可以创建一个公式,根据工作表的增长方式自动调整其范围。这里有一个例子来说明:

目前,单元格 B16 正在计算从 B2 到 B15 的总和。假设将来,我继续用项目和成本填充行并到达单元格 B15(现在一切都填满了。如果我想添加更多项目,我将在 B16 处插入一个新行和“总计' 行变为 B17。

但公式不会自动调整,范围将保持在 B2:B15。 有没有办法在我插入新行时自动调整公式范围?

我是 Excel 新手,但如果这很重要,我确实有编程经验。也欢迎其他解决此问题的替代方法。谢谢!

【问题讨论】:

  • 当我测试它时,如果 Excel 在公式内,它会扩大范围。因此,如果您突出显示第 16 行,右键单击并选择“插入”,公式将更改为 =SUM($B2:$B16) 它不适合您吗?如果不是,您可以使用 OFFSET 函数来操作范围。
  • @JerryJeremiah 是的,不知何故它不适合我!你能详细说明我如何使用OFFSET吗?搜索了一下,但我仍然不确定。
  • 我会将数据转换为表格并添加总计行 - 然后可以添加 1m 行数字,您的总计仍将正确计算在底部。没有复杂的易失公式 - 只需在表格设计选项卡中打勾即可。

标签: excel automation


【解决方案1】:

如果它只是您要计算的总和,那么它相当容易,因为一个空单元格被认为具有值 0。

因此,您可以将公式放在另一列中,并将其替换为 =SUM(B$2:B$1048576)

备注:
值 1048576 基于我的最大行数。您可以按 Ctrl + ↓ 来检查该值。

如果你真的想在同一列中得到总和,你可以使用这个公式:

=SUM(B$2:OFFSET(Bxxx,-1,0))

Bxxx 是放置此公式的单元格引用。

【讨论】:

  • 我知道这是可能的,但是有没有办法让公式在同一列中?
  • @Yui:我根据你的评论编辑了我的答案。
  • 谢谢!我也得到了相同的答案,虽然我不知道 OFFSET 可以直接在求和公式中使用,所以我最终定义了一个名为“LastCell”的单元格,它使用 OFFSET 并在 SUM 中使用它。
猜你喜欢
  • 1970-01-01
  • 2020-10-19
  • 1970-01-01
  • 2016-02-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-15
  • 1970-01-01
相关资源
最近更新 更多