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

Get certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now

Reply
Anonymous
Not applicable

Count qualified employees based on their distinct or common training

Hi everyone,

 

I have two tables as the screenshot below. I have created a measure that counts the qualified employees based on their training results.

 

pic.PNG

 

 

 

 

 

 

 

The measure to count the qualified employees

 

 

Qulaified Employees = CALCULATE(DISTINCTCOUNT(Table1[Employee]),FILTER(Table1,[Pass or not]="Pass"))

 

 

My issue is whenever there is a common training between 2 different qualifications, the measure doubles the counts of the qualified employees.

 

As you can see in the screenshot, I have no employee who is qualified for ( qualification4 ) though it's counting as one due to the common training between qualification1 and qualification4, I'm trying to make a measure which does this dynamically and not hard coded.

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

Hi @Anonymous ,

 

What Greg suggested works,here is the related .pbix file you can refer to .

 

Annotation 2020-04-06 122052.png

 

Best Regards,
Kelly
Did I answer your question? Mark my post as a solution!
 

View solution in original post

2 REPLIES 2
v-kelly-msft
Community Support
Community Support

Hi @Anonymous ,

 

What Greg suggested works,here is the related .pbix file you can refer to .

 

Annotation 2020-04-06 122052.png

 

Best Regards,
Kelly
Did I answer your question? Mark my post as a solution!
 
Greg_Deckler
Super User
Super User

Perhaps something like this:

 

Qualified Employees = 
  VAR __Table = FILTER('Table1',[Pass or not]="Pass")
  VAR __Trainings = SELECTCOLUMNS(__Table,"__Training",[Training name])
  VAR __Employees = SELECTCOLUMNS(__Table,"__Employees",[Employee])
  VAR __Qualifications = 
    ADDCOLUMNS(
      'Qualifications'
      "__In",IF('Qualifications'[Training Name] IN __Trainings,"Yes","No")
    )
RETURN
  IF(
    COUNTROWS(FILTER(__Qualifications,[__In] = "No"))>0,
    BLANK(),
    COUNTROWS(DISTINCT(__Employees))

 

Please see this post regarding How to Get Your Question Answered Quickly: https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490



Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
Power BI Cookbook Third Edition (Color)

DAX is easy, CALCULATE makes DAX hard...

Helpful resources

Announcements
OCT PBI Update Carousel

Power BI Monthly Update - October 2024

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

September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

October NL Carousel

Fabric Community Update - October 2024

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