假设我想计算一列的总和,然后在另一列 BUT 上减去sum,只使用给定行到当前行的值(wich公式中的值)。
所以,在“非正式的自定义语言”中,我需要这样的东西:
Supose我在 C5 : =(sum(A1:“A”+ ROW()) - sum(B1:“B”+ ROW()))
如何在excel中为此编写正确的表达式?
答案 0 :(得分:17)
您可以尝试使用INDIRECT
,它接受对范围的字符串引用并返回范围本身:
=SUM(INDIRECT("A1:A"&ROW()))-SUM(INDIRECT("B1:B"&ROW()))
在这里,我们从"A1:A"
的'存根'开始。然后我们使用ROW()
得到当前行(在本例中为5)并将其与我们的存根连接,给我们INDIRECT("A1:A5")
。由于INDIRECT
将返回其参数引用的范围(此处为"A1:A5"
),我们可以使用SUM
公式将其包装起来以获得结果(与SUM(A1:A5)
相同) 。然后,我们对列B
执行相同的操作。
答案 1 :(得分:6)
我认为你可能会向后看。您需要将对SUM
的调用中的第一个单元格引用锚定到第一行,但让第二个单元格引用随行更改。在单元格 C1 :
=SUM(A$1:A1) - SUM(B$1:B1)
现在,当您将其复制到列中时,它变为:
C2: = SUM(A $ 1:A2) - SUM(B $ 1:B2)
C3: = SUM(A $ 1:A3) - SUM(B $ 1:B3)
C4: = SUM(A $ 1:A4) - SUM(B $ 1:B4)
C5: = SUM(A $ 1:A5) - SUM(B $ 1:B5)
答案 2 :(得分:1)
C5:= (SUM))-(SUM))
试试这个:
C5:= (SUM(INDIRECT("A1:A" & ROW()))-(SUM(INDIRECT("B1:B" & ROW()))