我的电子表格中有成本和子成本。我想自动计算成本总额。是否有一个公式可以计算item_cost
此列下所有行的总数直到第一行被标记rollup
。类似SUM(A13:A[first_row_with_rollup=Yes]-1)
答案1
您可以使用该函数MATCH(lookup_value, lookup_array, match_type)
查找列中某个值的第一次出现。然后您可以使用该值来生成求和函数的范围。例如:
=SUM(INDIRECT(CONCATENATE("B1:B";MATCH("asd";B:B;0)-1)))
解释:
MATCH("asd";B:B;0) - 1 // finds the first occurrence of "asd" on B column, gets the cell above it
CONCATENATE("B1:B";$) // get the interval b1 to bn, where n is the cell found
INDIRECT($) // makes reference to the cell specified by the string "b1:bn"
SUM($) // sums the interval
在 Google Spreasheets 中测试,但根据文档应该可以在 Excel 上运行。
答案2
我知道这个帖子已经很旧了,但是为了其他可能寻找此问题解决方案的人的利益,您可以尝试以下操作:
假设要求和的数字列在 A 列,例如A10:A20
。
假设“汇总”在 B 列中,在每个点处求和。
然后将以下公式放入 中C10
:
=SUM(OFFSET(A10,0,0,MATCH("Rollup",B10:$B$20,FALSE),1))
请注意,数字列中的最后一个单元格具有绝对引用。您可以将其复制到其中C11:C20
以查看其实际作用。