Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreThe FabCon + SQLCon recap series starts April 14th at 8am Pacific. If you’re tracking where AI is going inside Fabric, this first session is a can't miss. Register now
Hi!
I am looking to DAX for the employee turnover calculated monthly.
The logic is (number of employess who left the company from the beginning of the period till the end of every month) / (avarage number of active employees from the beginning of the period till the end of every month)
where Average number of active employees is (sum of number of employess daily) / (number of days in the period):
e.g. Jan 1 - 20 employees
Jan 2 - 25 employees
....
Jan 31 - 18 emloyees
Then (20+25+...+18)/31 day = average number of active employees
Employee turnover monthly DAX I need:
Since Jan 1 till Jan 31 there are 2 employees left and average number of active employees is say 23 then 2/23 = 8.7%
Then the next value should be calculated for the period since Jan 1 till Feb 28, then Jan 1 till March 31 etc.
The query looks like this:
| First_Last_Name_Employee | Employment_start_date | Employment_end_date |
| Employee 1 | 01/03/2019 | 31/05/2019 |
| Employee 2 | 17/11/2019 | 17/02/2020 |
| Employee 3 | 01/10/2018 | 31/07/2020 |
Help would be greatly appreciated!
Maria
Solved! Go to Solution.
Hi @Maria929292 ,
First, please create a Date table. Then create a measure as below and put the date field of Date table in X axis of visual.
employees_left =
CALCULATE (
DISTINCTCOUNT ( Staff_data[Email] ),
FILTER (
'Staff_data',
Staff_data[Employment_start_date] <= SELECTEDVALUE ( 'Date'[date] )
&& Staff_data[Employment_end_date] >= SELECTEDVALUE ( 'Date'[date] )
)
)
Best Regards
@Maria929292 , Refer my HR Blog
For Avg Employee
AverageX(values(Date[Date]),[Current Employees]) // ,[Current Employees]) from blog
In case of view by month year it should take care days
hi @amitchandak,
thank you so much for your help!
The employee calculations do not really work for me as I assign the labels depending on the year I am looking at. E.g. employee hired last year would be "hired" in 2020 and "current" in 2021.
This is my DAX for terminated employees (our fiscal year starts in September):
employees_left_in 20_21 = IF(
ISBLANK(CALCULATE(DISTINCTCOUNT(Staff_data[Email]),Staff_data[Employment_end_date]>=DATE(2020,09,01))),
0,
CALCULATE(DISTINCTCOUNT(Staff_data[Email]),Staff_data[Employment_end_date]>=DATE(2020,09,01)))
And the turnover I need should be within every year as well. 😞
Hi @Maria929292 ,
First, please create a Date table. Then create a measure as below and put the date field of Date table in X axis of visual.
employees_left =
CALCULATE (
DISTINCTCOUNT ( Staff_data[Email] ),
FILTER (
'Staff_data',
Staff_data[Employment_start_date] <= SELECTEDVALUE ( 'Date'[date] )
&& Staff_data[Employment_end_date] >= SELECTEDVALUE ( 'Date'[date] )
)
)
Best Regards
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
| User | Count |
|---|---|
| 52 | |
| 39 | |
| 37 | |
| 19 | |
| 18 |
| User | Count |
|---|---|
| 67 | |
| 66 | |
| 34 | |
| 32 | |
| 29 |