如何生成Cumulative Sales列:唯一ClientID首行填Total sales总和,其余为0
问题:生成符合规则的累计销售额列
数据集
ClientID Date Total sales Cumulative Sales 0 A 01-01-2000 100 300 1 A 01-02-2000 100 0 2 A 01-03-2000 100 0 3 B 01-01-2000 50 100 4 B 01-02-2000 50 0 5 C 01-01-2000 70 210 6 C 01-02-2000 70 0 7 C 01-03-2000 70 0 8 D 01-01-2000 20 40 9 D 01-02-2000 20 0
需求
为每个唯一的ClientID对应的第一行,填充该客户所有Total sales的总和;其余行填充0,生成Cumulative Sales列。
Excel解决方案
操作步骤:
- 新增一列(例如此处为R列),用于标记每个
ClientID是否为首次出现。 - 在目标列输入以下公式:
=IF(COUNTIFS($F$2:$F8, $F8)=1, SUMIF($F$2:$F$1065, R8, $P$2:$P$1065), "0")
公式解释:
COUNTIFS($F$2:$F8, $F8)=1:判断当前行的ClientID(F列)在第2行到当前行的范围内是否仅出现1次,以此确认是否为该客户的首行。SUMIF($F$2:$F$1065, R8, $P$2:$P$1065):如果是首行,计算该ClientID(R列对应的首次值)在整个数据集范围内所有Total sales(P列)的总和。- 若不是首行,则返回0。
内容的提问来源于stack exchange,提问作者sudha smitha
相关产品推荐
相关产品推荐

