Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
emmaclarke83
Helper I
Helper I

count number of days depending on date range in filter

Hi I am trying to do some absence calculations.  I have a start and end date for each occasion of absence.  If I have a date slicer and select a date range, I would like to count the number of days absence within that date range filter, excluding weekends

For example, if someone is absent between 18/09/2017 and 13/10/2017 that is 20 working days (excluding weekends).  If I apply a filter between 09/10/2017 and 15/10/2017, I want to count the absence days so for the above example it would show 5 working days. Any idea on the Measure syntax for this?

Thanks

1 ACCEPTED SOLUTION
v-qiuyu-msft
Community Support
Community Support

Hi @emmaclarke83,

 

You can create a calendar table firstly, drag the date from calendar table in slicer, then create a measure below: 

 

Diff =
var start_Date=FIRSTDATE(ALLSELECTED('CALENDAR'[Date]))
var end_Date=LASTDATE(ALLSELECTED('CALENDAR'[Date]))
var current_Start=MAX('Table1'[StartDate])
var current_end=MAX('Table1'[EndDate])
return
IF(current_end>=start_Date&&current_Start<=end_Date,DATEDIFF(MAX(start_Date,current_Start),MIN(end_Date,current_end),DAY)-COUNTROWS(FILTER(ADDCOLUMNS(CALENDAR(MAX(start_Date,current_Start),MIN(end_Date,current_end)),"DoW",WEEKDAY([Date],1)),[DoW]=1||[DoW]=7))+1)

 

q3.PNG

 

For details, you can see attached pbix file. 

 

Best Regards,
Qiuyun Yu 

Community Support Team _ Qiuyun Yu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

3 REPLIES 3
v-qiuyu-msft
Community Support
Community Support

Hi @emmaclarke83,

 

You can create a calendar table firstly, drag the date from calendar table in slicer, then create a measure below: 

 

Diff =
var start_Date=FIRSTDATE(ALLSELECTED('CALENDAR'[Date]))
var end_Date=LASTDATE(ALLSELECTED('CALENDAR'[Date]))
var current_Start=MAX('Table1'[StartDate])
var current_end=MAX('Table1'[EndDate])
return
IF(current_end>=start_Date&&current_Start<=end_Date,DATEDIFF(MAX(start_Date,current_Start),MIN(end_Date,current_end),DAY)-COUNTROWS(FILTER(ADDCOLUMNS(CALENDAR(MAX(start_Date,current_Start),MIN(end_Date,current_end)),"DoW",WEEKDAY([Date],1)),[DoW]=1||[DoW]=7))+1)

 

q3.PNG

 

For details, you can see attached pbix file. 

 

Best Regards,
Qiuyun Yu 

Community Support Team _ Qiuyun Yu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Hi Qiuyun Yu 

 

I have just noticed an issue with this measure.  It does doesn't SUM.  Is there a way round this?   I need to be able to sum up total number of days from this measure

 

Thanks

That's perfect, thank you 🙂

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.