如何基于excel中的非累积分类列动态创建累计总计

时间:2016-10-28 11:40:31

标签: excel cumulative-sum

稍微罗嗦的标题,但这里是

我在Excel中有一个网格,包括3列(媒体支出,边际收益回报和投资的媒体渠道),我想创建下面的列,称为所需的累积支出

网格以这种方式构建的原因在于它代表了一种优化的花费下放量,这是根据每个媒体渠道的预算应该投入多少,直到边际收益减少,以便它应该替代另一个媒体渠道。

如果新渠道的曲线急剧减少,则可能会将此替代转回原始渠道,以便与新渠道相关的所有边际收益减少,总支出水平仍然意味着它在数学上是合理的切换回原始曲线(可能它具有较低的基准水平但减少不那么急剧)。也有可能在与新渠道相关的边际收益减少的时刻,最好的下一步是投资第三渠道。

所需的新支出列有两个元素

  1. 这是一个简单的累积花费从行到行的时候 媒体渠道从一行到另一行是不变的
  2. 当媒体报道时,这是一种稍微复杂的花费 频道变化 - 然后它需要能够引用回来 与频道相关的最后支出水平 对于第4行,我正在努力的逻辑需要 到第3行的运行总计加上相关的新支出水平 到第4行减去上次使用此频道时的支出水平 (第2行)
  3.   |spend  | mar return | media | desired cumulative spend                  |
      |------ |----------- |-------| ----------------------------------------- |
    1 | £580  | 128        | chan1 | 580                                       |
    2 | £620  | 121        | chan1 | 580+(620-580)                             |
    3 | £900  | 115.8      | chan2 | 580+(620-580)+900                         |
    4 | £660  | 115.1      | chan1 | 580+(620-580)+900+(660-620)               |
    5 | £920  | 114        | chan2 | 580+(620-580)+900+(660-620)+(920-900)     |
    6 | £940  | 112        | chan2 | 580+(620-580)+900+(660-620)+(920-900)+(940-920) |
    

1 个答案:

答案 0 :(得分:1)

如果我的评论是正确的消息,那么这样的事情应该这样做(£580在A2,所以第一个输出是D2):

D2 =A2
D3 =D2+A3-IF(COUNTIF($C$2:C2,C3),INDEX(A:A,MAX(IF($C$2:C2=C3,ROW($A$2:A2)))))
  

D3包含数组公式,必须使用 ctrl + shift + 输入确认。

现在你可以简单地从D3复制。