如何在 Excel 中保持小计/总计的运行?

如何在 Excel 中保持小计/总计的运行?

我知道这可能是一个非常简单的问题,但我不知道如何在 Google 中表达它,所以我无法自己找到答案。我在 Excel 中有一个电子表格,基本上是一个购物清单:

Apples--------$1.00             

Bananas-----$2.25

Carrots-------$1.75...

我需要知道的是如何在下一列中创建一个运行小计,它将告诉我添加每个项目后的总数。这将使电子表格现在看起来像这样:

Apples--------$1.00--------$1.00      

Bananas-----$2.25--------$3.25     

Carrots-------$1.75--------$5.00...   

到最后,我会喜欢能够只添加新商品和价格,并让其自行计算累计小计,但我满足于它能够处理现有列表,如我所示。有什么想法可以做到这一点吗?

答案1

一个简单的方法是使用一个SUM具有绝对起始地址但终止地址的公式,该地址随着公式的复制和系列展开而改变。

假设价格以列的形式显示B,并且从 开始B1,将其放置=SUM($B$1:B1)在累计总和列的第一个单元格中。然后选择单元格,以便您看到其右下角的抓取器。抓住它并向下拖动,直到累计总和列中的条目数与商品价格列中的条目数一样多。

Excel 会自动调整公式,使其从商品价格列的顶部向下求和,直到与运行总计列中的当前单元格处于同一级别。公式中的美元符号可防止在通过拖动扩展系列时调整起始单元格,但结束单元格会自动调整,因为其地址上没有美元符号(它是相对地址)。

答案2

BenN 的出色回答可能就是我处理这个问题的方法,但这里还有另一个想法,只是为了给你一个可能在其他特定情况下起作用的结构:

假设价格在 B 列,累计总数在 C 列:=B1在累计总数列的第一个单元格中,C1.然后放入=C1+B2单元格C2。 这会将新值添加到之前的累计总数中。选择单元格C2这样你就可以在右下角看到小的黑色方形抓手。抓住那个方块并向下拖动,直到累计总数列中的条目数与商品价格列中的条目数一样多。(双击那个小方块也应该会自动填充。)

答案3

这是一种更复杂但可选的方法,略有不同:

ABCDE
项目 价格 金额 $2.50 总计
苹果 1.00 美元 2.5     
香蕉 2.25 美元           
胡萝卜 1.75 美元           

D1 中的公式是=SUMPRODUCT(B2:B4;C2:C4)


您也可以=COUNTIF(A:A;"<>")-1添加 D2,输入# of items listedE2(在 D2 的右侧),然后将 D1 更改为:

=SUMPRODUCT(INDIRECT("B2:"&CELL("地址";OFFSET(B2;D2-1;0)));INDIRECT("C2:"&CELL("地址";OFFSET(C2;D2-1;0))))

... 列表更新最终将变得非常简单,只需输入商品、价格和任意金额即可。
随着“商品数量...”的更新,新商品旁边的列中的价格和金额将包含在 D1 中的总和中。

怎么运行的:
COUNTIF()D2 中的 会显示有多少行已填充;也就是说:它包括标题行,该行在末尾被从总和中“移除” -1
使用OFFSET()会产生对单元格 D2 行(从 B2(和 C2)向下)的“引用”,通过“-1”调整以不包括最后一项下方的单元格。
然后引用将转换为文本,CELL()以便可以将其附加到"B2:"...&使用
生成的文本字符串,INDIRECT()将创建SUMPRODUCT()完成其任务所需的内容。
小菜一碟,不是吗?;-)

相关内容