Power Pivot DAX 累计至今,历史累计至今

传送门https://zhuanlan.zhihu.com/p/42836579

DAX中已经有诸如YTD,QTD,MTD时间智能函数。用起来也比较方便。
但很多时候需要看历史累计至今的数据,需要自己根据实际情况写dax。
今天在这里抛砖引玉,写一个示例。

数据源:

就两列

date:2017/8/1..2018/8/23(今天刚好是23号,就模拟来一个这样的数据)

value:1(都是1方便观测)

如图:
file
习惯先写总计方便后续调用

total:=SUM([value])

1、用filter写的如下:

file

=
var sd=firstdate(all('data'[date]))
var ed=lastdate('data'[date])
var t=filter(all('data'),'data'[date]>=sd&&'data'[date]<=ed)
return
calculate('data'[total],t)

2、用calculatetable写的如下:

file

=
var sd=firstdate(all('data'[date]))
var ed=lastdate('data'[date])
var t1=datesbetween('data'[date],sd,ed)
var t=calculatetable('data',t1,all('data'[日期 (季度)],'data'[日期 (年)],'data'[日期 (月)]))
return
calculate('data'[total],t)

3、效果如下:

切片7月
file

切片8月
file

by焦鹏子