隐藏

以power bi计算在切片器中选择的两个日期之间的工作日

发布:2024/9/25 20:42:30作者:管理员 来源:本站 浏览次数:19

Days =

/*We get the first and last date from the slicer*/

VAR First = CALCULATE ( MIN ( Date[Date] ), ALLSELECTED ( Date[Date] ) )

VAR Last =  CALCULATE ( MAX ( Date[Date] ), ALLSELECTED ( Date[Date] ) )

/*We calculate the days between the two dates*/

RETURN

   DATEDIFF ( First, Last, DAY )


我建议先在date表中添加一个列IsWorkingDay。作为explained here,您可以使用如下所示的列排除周末:

'Date'[IsWorkingDay] = NOT WEEKDAY( 'Date'[Date] ) IN { 1,7 }

其中1和7分别对应于周日和周六。


一旦你有了它,就只是counting days where that column is true的问题了。


作为衡量标准,您可以将此代码写为

WorkingDaysCount =

COUNTROWS (

   FILTER ( 'Date', 'Date'[IsWorkingDay] = TRUE () )

)


注意,表'Date'应该已经被切片器过滤了,您只是添加了一个额外的条件。如果您有其他需要忽略的筛选器上下文,那么您可能希望使用ALLSELECTED ( 'Date' )而不只是'Date'。