我有一个有2行的简单电子表格:
ActualJAN,BudgetJAN,ActualFEB,BudgetFEB,ActualMAR,BudgetMAR ..。 试试看,100,000,000,100,000,100,000,100,100,40,100,100,100,100
我只想把预算案各栏加到当月(月(今日()。
对于实际的列也是如此。
所以如果我们现在在二月份,
迄今为止的预算将是: 600=200+400
到目前为止的实际情况是: 400=100+300
我似乎无法到达那里,至少是简单而优雅的。
发布于 2018-02-14 02:57:45
这是一个执行类似数组操作的非数组公式。因此,应该避免大范围引用,否则您将经历系统的减速或潜在崩溃。对于一个小的定义范围工作很大,只要公式不重复太多次也。
此外,今天()是一个volitile函数,这意味着公式将在电子表格中的任何内容更改时重新计算,而不仅仅是当与公式相关的内容发生变化时。
这个公式是广义的,所以您的数据可以定位在您的工作表上的任何地方,而不需要重新排列您的数据。
若要获得实际金额,请使用以下方法:
=SUMPRODUCT($C$4:$H$4*(COLUMN($C$4:$H$4)-COLUMN($C$4)+1<=MONTH(TODAY())*2)*(LEFT($C$3:$H$3)="A"))若要获得预算金额,请使用以下方法:
=SUMPRODUCT($C$4:$H$4*(COLUMN($C$4:$H$4)-COLUMN($C$4)+1<=MONTH(TODAY())*2)*(LEFT($C$3:$H$3)="B"))换C4:H4以适应你的号码范围。变更C3:H3适合您的专栏标题范围。将C4更改为数字范围的第一个单元格。
警告:假设从1月开始最多12个月。
概念证明:

发布于 2018-02-14 02:03:36
我建议以不同的方式构造您的数据。如果您将所有数据垂直排列并将数据分成三列,这将是一项更容易的任务。第一个是分类,它将填充“预算”或“实际”。下一篇专栏将是Month。在此之后,当然有值列。然后,使用基本的SUMIF,如"=SUMIF(A1:A6,预算“,C1:C6)。A1:A6是Excel将扫描所需变量的范围。在这种情况下,这个变量是“预算”。然后,C1:C6是对应于“预算”月份的值。只要您将SUMIF公式扩展到包含所有值,例如“SUMIF(A1:a 317,预算”,C1:C 317),该公式就会给出您想要的答案。
发布于 2018-02-14 03:38:48
所以我想我理解你想要做什么,没有电子表格的其他部分,我无法完成整个公式,但这是当前的工作:
关于实际情况:
=IF(MONTH(TODAY())=1,A2,IF(MONTH(TODAY())=2,A2+C2,IF(MONTH(TODAY())=3,A2+C2+E2,"")))财政预算案:
=IF(MONTH(TODAY())=1,B2,IF(MONTH(TODAY())=2,B2+D2,IF(MONTH(TODAY())=3,B2+D2+F2,"")))下面是我为测试而创建的电子表格:

如果你给我剩余的数据,我可以完成公式,基本上,你需要做的就是增加更多的月公式,并改变它所增加的数额。
我相信可能有更有效的方法来实现这一点,但这种方式是可行的。
https://stackoverflow.com/questions/48777641
复制相似问题