Forum Discussion
Calculated table dynamically change from new data
- 8 years ago
Create a date table to return the last day of each month.
Create a date table
Date = CALENDAR(DATE(2015,1,1),DATE(2017,12,31))
Create a column to get the last day of each month
LastDay = ENDOFMONTH('Date'[Date])Create another table
LastDayofMonth = SUMMARIZE('Date','Date'[LastDay])Create a column to get average age.
AverageAge =
DATEDIFF (
CALCULATE (
AVERAGE ( Table2[BirthDate] ),
FILTER (
Table2,
OR (
ISBLANK ( Table2[InactiveDate] ),
Table2[InactiveDate] > 'LastDayofMonth'[LastDay]
)
)
),
'LastDayofMonth'[LastDay],
YEAR
)Regards,
Charlie Liao
Create a date table to return the last day of each month.
Create a date table
Date = CALENDAR(DATE(2015,1,1),DATE(2017,12,31))
Create a column to get the last day of each month
LastDay = ENDOFMONTH('Date'[Date])
Create another table
LastDayofMonth = SUMMARIZE('Date','Date'[LastDay])
Create a column to get average age.
AverageAge =
DATEDIFF (
CALCULATE (
AVERAGE ( Table2[BirthDate] ),
FILTER (
Table2,
OR (
ISBLANK ( Table2[InactiveDate] ),
Table2[InactiveDate] > 'LastDayofMonth'[LastDay]
)
)
),
'LastDayofMonth'[LastDay],
YEAR
)
Regards,
Charlie Liao
Thank you, v-caliao-msft!
Almost working. I'm still cheking solution (new with DAX).
I found, that I need one more filter - I need to include only active employees, so I need to filter from "Employment Start Date" too, but not sure - is it correct.
AverageAge =
DATEDIFF (
CALCULATE (
AVERAGE ( Table2[BirthDate] ),
FILTER (
Table2, Table2[Employment Start Date] < 'LastDayofMonth'[LastDay]
),
FILTER (
Table2,
OR (
ISBLANK ( Table2[InactiveDate] ),
Table2[InactiveDate] > 'LastDayofMonth'[LastDay]
)
)
),
'LastDayofMonth'[LastDay],
YEAR
)