如何计算只减少或增加部分总和? 例如:
身份证 | 月 | 价值 |
---|---|---|
1 | 2019 年 1 月 | 100 |
2 | 2019 年 1 月 | 120 |
3 | 2019 年 1 月 | 90 |
4 | 2019 年 1 月 | 60 |
1 | 2020 年 1 月 | 150 |
2 | 2020 年 1 月 | 90 |
3 | 2020 年 1 月 | 130 |
4 | 2020 年 1 月 | 40 |
价值增加 | 价值下降 |
---|---|
90 | 50 |
当然在真实的数据文件中有数千个不同的ID。
尝试数据透视表中的公式:
=IF(FILTER(Value, Month = "January 2019") > FILTER(Value, Month = "January 2020"), FILTER(Value, Data = "January 2019")-FILTER(Value, Data = "January 2020"), FILTER(Value, Data = "January 2020")-FILTER(Value, Data = "January 2019"))
在数据透视表中移动变量。 我得到的最接近的结果是将 ID 放在行中,将日期放在列中以及“差异”日期,但我无法删除正值/负值。
使用 LET:
积极:
=LET(
ID,A2:A9,
m,B2:B9,
v,C2:C9,
u,UNIQUE(ID),
vl,BYROW(u,LAMBDA(z,SUMIFS(v,ID,z,m,"January 2020")-SUMIFS(v,ID,z,m,"January 2019"))),
ABS(SUM(FILTER(vl,vl>0))))
负面:
=LET(
ID,A2:A9,
m,B2:B9,
v,C2:C9,
u,UNIQUE(ID),
vl,BYROW(u,LAMBDA(z,SUMIFS(v,ID,z,m,"January 2020")-SUMIFS(v,ID,z,m,"January 2019"))),
ABS(SUM(FILTER(vl,vl<0))))