Forum Discussion
Calculate Utilization percentage
Consider the below table. I have a slicer list of employees and a Date Range visual. I want to display the utilization percentage on a Gauge chart.
Utilization Percentage in a particular duration = (Total Business Hours - No Work Hours)/Total Business Hours
Where
Total Business Hours = Work Days x 8
Work Days = All Days in the duration - Holidays
| Employee | Work | Hours | Date |
| Person 1 | Task 1 | 4 | 09-Aug-21 |
| Person 1 | No Work | 2 | 09-Aug-21 |
| Person 1 | Task 2 | 2 | 09-Aug-21 |
| Person 2 | Task1 | 3 | 09-Aug-21 |
| Person 2 | Task 2 | 1 | 09-Aug-21 |
| Person 2 | Leave | 4 | 09-Aug-21 |
| Person 3 | No Work | 3 | 09-Aug-21 |
| Person 3 | Task 2 | 5 | 09-Aug-21 |
| Person 1 | Holiday | 8 | 10-Aug-21 |
| Person 2 | Holiday | 8 | 10-Aug-21 |
| Person 3 | Holiday | 8 | 10-Aug-21 |
Hi Anonymous ,
If you want to filter out the Holiday or Overtime part, you can modify the following formula like below:
1 = VAR total_bus = ( COUNTROWS ( 'Table' ) - CALCULATE ( COUNTROWS ( 'Table' ), FILTER ( 'Table', 'Table'[Work] = "Holiday" || 'Table[Work]' = "Overtime" ) ) ) * 8 VAR no_work = SUMX ( FILTER ( 'Table', 'Table'[Work] = "No Work" ), 'Table'[Hours] ) RETURN DIVIDE ( total_bus - no_work, total_bus )
If the problem is still not resolved, please provide detailed error information and let me know immediately. Looking forward to your reply.
Best Regards,
Henry
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
9 Replies
- v-henryk-mstfCommunity Support
Hi Anonymous ,
Based on your needs, I create the corresponding formula, refer to the following:
1 = VAR total_bus = ( COUNTROWS ( 'Table' ) - CALCULATE ( COUNTROWS ( 'Table' ), FILTER ( 'Table', 'Table'[Work] = "Holiday" ) ) ) * 8 VAR no_work = SUMX ( FILTER ( 'Table', 'Table'[Work] = "No Work" ), 'Table'[Hours] ) RETURN DIVIDE ( total_bus - no_work, total_bus )
If there is a problem, please point out the clear error and I will answer it for you as soon as possible.
Best Regards,
Henry
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.- AnonymousNot applicable
It seems to work for now. A little bit more precision would be great.
Now I came to think of the situation when some employees might work on weekend and the table may have entries for these weekend work which needs to be ignored.Is it possible to use the formulae (1 and 2) I annotated in the attached image?
- v-henryk-mstfCommunity Support
Hi Anonymous ,
If the formula is created correctly, adding it to the corresponding visual will work correctly.
Best Regards,
Henry
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
- amitchandakSuper User
Anonymous , Do you have table with business days ?
Or that can be distinct values of dates ?
- AnonymousNot applicable
My raw data table has entries for each and every day.
- amitchandakSuper User
Anonymous , Try a measure like
var _bh = distinctCOUNT(Table[Employee])*distinctCOUNT(Table[Date]) *8
var _hr = sux(filter(Table, Table[Work] <> "No Work")
return
calculate(divide(_bh-_hr, _bh), filter(Table, Table[Work] <> "Holiday"))