PowerBI中基于工作日数据添加当月最后工作日列的方法
在PowerBI中计算数据集当月最后工作日的方法
可以用DAX的CALCULATE和MAX函数组合实现,针对每个日期筛选出同月份的所有工作日,再取其中的最大值,就是该月的最后工作日。具体公式如下:
last date = CALCULATE( MAX(Data[Date]), FILTER( ALL(Data), YEAR(Data[Date]) = YEAR(SELECTEDVALUE(Data[Date])) && MONTH(Data[Date]) = MONTH(SELECTEDVALUE(Data[Date])) ) )
公式说明:
SELECTEDVALUE(Data[Date]):获取当前行的日期值FILTER(ALL(Data), ...):筛选出整个数据集中,和当前行日期同年同月的所有工作日MAX(Data[Date]):从筛选后的日期集合中取最大值,即该月的最后工作日
如果你的数据模型中配置了日期表(推荐用日期表优化计算效率),也可以基于日期表编写公式:
last date = CALCULATE( MAX(Data[Date]), RELATEDTABLE(DateTable), YEAR(DateTable[Date]) = YEAR(Data[Date]), MONTH(DateTable[Date]) = MONTH(Data[Date]) )
验证示例:
针对2023年4月的工作日数据,公式会筛选出该月所有工作日记录,最终取最大值28-Apr-2023,完全匹配你的需求。
内容的提问来源于stack exchange,提问作者Luu nguyen
相关产品推荐
相关产品推荐

