如何在Power BI中按周四-周三统计每月周数?
适配周四至周三周期的月度周数统计公式
针对你需要按周四至周三为周期统计每月周数的需求,这里提供两种可行的DAX公式方案:
方案一:基于原公式修改(日期偏移适配周期)
原公式默认按周日起始统计周数,我们可以通过日期偏移将周四映射为新的周起始基准,调整后的公式如下:
= 1 + WEEKNUM( 'ECR'[Date Originated] - 3, 2 ) - WEEKNUM( EOMONTH( 'ECR'[Date Originated], -1 ) + 1 - 3, 2 )
逻辑说明:
- 给日期减去3天,让原日期的周四变为周一(
WEEKNUM参数2为「周一至周日」的周统计规则),以此匹配周四至周三的周期范围; - 对当月第一天执行同样的偏移操作,保证周数计算的基准统一。
方案二:直接定位当月第一个周四(逻辑更直观)
通过变量明确定位当月第一个周四,再计算当前日期与该日期的周差,公式可读性更强:
VAR CurrentDate = 'ECR'[Date Originated] VAR MonthStart = EOMONTH(CurrentDate, -1) + 1 -- 计算当月第一个周四:WEEKDAY参数2表示周一=1、周日=7,周四对应数值4 VAR FirstThursday = MonthStart + MOD(4 - WEEKDAY(MonthStart, 2), 7) RETURN -- 周差+1得到当月周数(不足一周时周差为0,对应第1周) 1 + DATEDIFF(FirstThursday, CurrentDate, WEEK)
逻辑说明:
MonthStart获取当前日期所在月的第一天;FirstThursday通过计算当月第一天到下一个周四的天数偏移,精准定位当月第一个周四(即你示例中10月的第1周起始日);DATEDIFF计算当前日期与第一个周四的完整周数差,加1后得到当前日期对应的月度周数。
内容的提问来源于stack exchange,提问作者sunset
相关产品推荐
相关产品推荐

