基于工作日参照表计算两日期工作日差值的计算列DAX公式求解
基于自定义工作日参照表的DAX工作日差值计算列实现
前置说明
- 需提前准备覆盖全业务日期范围的连续工作日参照表,表内包含两个核心字段:日期字段、工作日标记字段(
1标记为工作日,0标记为法定公休/休息日) - 业务事实表中已存在需要计算差值的两个日期字段,例如「开始日期」「结束日期」
计算列DAX公式
以下公式可直接在业务表的计算列中使用,使用前需将字段名替换为你自己表的实际字段:
工作日差值 = VAR _起始日期 = '业务事实表'[开始日期] VAR _截止日期 = '业务事实表'[结束日期] RETURN CALCULATE( SUM('工作日参照表'[工作日标记]), '工作日参照表'[日期列] >= _起始日期, '工作日参照表'[日期列] <= _截止日期 )
调整规则
- 若计算时不需要计入起始当日的工作日,将条件
'工作日参照表'[日期列] >= _起始日期修改为'工作日参照表'[日期列] > _起始日期即可 - 若计算时不需要计入截止当日的工作日,将条件
'工作日参照表'[日期列] <= _截止日期修改为'工作日参照表'[日期列] < _截止日期即可
注意事项
需确保工作日参照表的日期序列完全覆盖所有业务出现的日期范围,否则会出现漏算的情况。
内容的提问来源于stack exchange,提问作者Mres
相关产品推荐
相关产品推荐

