Forum Discussion
shansenTrek
6 years agoFrequent Visitor
Average Days to Complete a Task
Hi Team, First time poster, long time reader/follower. I am trying to create a measure to give me the average days to complete a task. We have multiple people working on several projects tha...
- 6 years ago
Perhaps:
Avg # of Days =
VAR __Table =
SUMMARIZE(
'Table',
[Project],
"Start Date",FIRSTDATE( 'Table'[Date] ),
"Last Date",LASTDATE( 'Table'[Date] ),
"# of Days",DATEDIFF( [Start Date] , [Last Date] , DAY )
)RETURN
AVERAGEX(__Table,[# of Days])
vanessafvg
6 years agoCommunity Champion
can you dump out the data in text?
shansenTrek
6 years agoFrequent Visitor
Will this work? I'm new to this so let me know if there is an easier way to do it.
| Date | Hours | Employee Name | Region | Project Name | Task Names |
| 08/19/2019 | 8 | Susan | West | Project A | Task 3 |
| 08/20/2019 | 8 | Susan | West | Project A | Task 3 |
| 08/21/2019 | 8 | Susan | West | Project A | Task 3 |
| 08/16/2019 | 8 | Susan | West | Project A | Task 3 |
| 08/14/2019 | 8 | Susan | West | Project A | Task 3 |
| 11/05/2019 | 9 | Joe | East | Project C | Task 3 |
| 11/08/2019 | 10 | Joe | East | Project C | Task 3 |
| 11/07/2019 | 8 | Joe | East | Project C | Task 3 |
| 06/03/2019 | 4 | Mike | West | Project B | Task 1 |
| 05/28/2019 | 7 | Mike | West | Project B | Task 1 |
| 05/30/2019 | 4 | Mike | West | Project B | Task 1 |
| 05/29/2019 | 8 | Mike | West | Project B | Task 1 |
| 05/03/2019 | 1 | Mike | West | Project B | Task 1 |
| 06/04/2019 | 8 | Susan | West | Project A | Task 1 |
| 06/03/2019 | 8 | Susan | West | Project A | Task 1 |
| 10/08/2019 | 2 | Joe | East | Project C | Task 1 |
| 02/19/2020 | 3 | Mike | West | Project B | Task 5 |
| 03/25/2020 | 12 | Susan | West | Project B | Task 4 |
| 03/24/2020 | 8 | Susan | West | Project B | Task 4 |
| 01/22/2020 | 5 | Mike | West | Project B | Task 4 |
| 11/18/2019 | 6 | Joe | East | Project C | Task 4 |
| 11/22/2019 | 8 | Joe | East | Project C | Task 4 |
| 11/21/2019 | 9 | Joe | East | Project C | Task 4 |
| 10/18/2019 | 8 | Susan | West | Project A | Task 4 |
| 10/17/2019 | 8 | Susan | West | Project A | Task 4 |
| 10/16/2019 | 8 | Susan | West | Project A | Task 4 |
| 10/15/2019 | 8 | Susan | West | Project A | Task 4 |
| 01/29/2020 | 2 | Joe | East | Project C | Task 4 |
| 10/25/2019 | 8 | Joe | East | Project C | Task 2 |
| 10/23/2019 | 8 | Joe | East | Project C | Task 2 |
| 10/22/2019 | 8 | Joe | East | Project C | Task 2 |
| 10/21/2019 | 8 | Joe | East | Project C | Task 2 |
| 07/24/2019 | 8 | Susan | West | Project A | Task 2 |
| 07/23/2019 | 8 | Susan | West | Project A | Task 2 |
- v-alq-msft6 years agoCommunity Support
Hi, shansenTrek
Based on your description, I created data to reproduce your scenario.
Table:
You may create two measures as below.
SumDays = var t1 = SUMMARIZE( 'Table', 'Table'[Project Name], 'Table'[Task Names], "Start Date",FIRSTDATE('Table'[Date]), "Last Date",LASTDATE('Table'[Date]) ) var t2 = ADDCOLUMNS( t1, "# of Days",DATEDIFF([Start Date],[Last Date],DAY) ) var _task = SELECTEDVALUE('Table'[Task Names]) return SUMX( FILTER( t2, [Task Names] = _task ), [# of Days] ) AvgDays = var t1 = SUMMARIZE( 'Table', 'Table'[Project Name], 'Table'[Task Names], "Start Date",FIRSTDATE('Table'[Date]), "Last Date",LASTDATE('Table'[Date]) ) var t2 = ADDCOLUMNS( t1, "# of Days",DATEDIFF([Start Date],[Last Date],DAY) ) var _task = SELECTEDVALUE('Table'[Task Names]) return DIVIDE( SUMX( FILTER( t2, [Task Names] = _task ), [# of Days] ), COUNTROWS( FILTER( t2, [Task Names] = _task ) ) )Result:
Best Regards
Allan
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.