cancel
Showing results for
Did you mean:

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Anonymous
Not applicable

## Calculate percentage based on two different tables

Hello,

I have two tables, one that shows all the people who did the annual medical examination required by the company (table Medical_Exams), and other that has the total number of employees in the company (table Employees). They follow this structure:

table: Medical_Exams

 ID Name Exam_Date 1 David 10/12/2020 2 Lynn 09/11/2020 3 Leo 01/08/2020 4 Luna 03/02/2020

table: Employees

 ID Name Departament 1 David A 2 Lynn B 3 Leo C 4 Luna A 5 Alex A 6 Lisa C

I want to make a simple percentage of all the people who already have done their medical exams and show it in a table view in my dashboard, separated by department.

The end result in my dashboard should be a table like this:

 Departament Percentage A 66,66 % B 100 % C 50 %

I've already created a calculated column in the "Medical_Exams" table that uses a LookUpValue to get the person's department based on the ID column, but I can't create a measure that does this percentage calculation based on two tables.

Can someone help me?

1 ACCEPTED SOLUTION
Community Support

Hi  @Anonymous  ,

Here are the steps you can follow：

1. Create measure.

``````Percentage =
var _1=CALCULATE(COUNT('Employees'[ID]),FILTER(ALL('Employees'),'Employees'[ Departament]=MAX('Employees'[ Departament])))
var _2=COUNTX(FILTER('Employees',[Name] in SELECTCOLUMNS('Medical_Exams',"1",[Name])),[ID])
return
DIVIDE(_2,_1)``````

2. Result:

Best Regards,

Liu Yang

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

3 REPLIES 3
Community Support

Hi  @Anonymous  ,

Here are the steps you can follow：

1. Create measure.

``````Percentage =
var _1=CALCULATE(COUNT('Employees'[ID]),FILTER(ALL('Employees'),'Employees'[ Departament]=MAX('Employees'[ Departament])))
var _2=COUNTX(FILTER('Employees',[Name] in SELECTCOLUMNS('Medical_Exams',"1",[Name])),[ID])
return
DIVIDE(_2,_1)``````

2. Result:

Best Regards,

Liu Yang

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Super User

This works. The .pbix is located here.

Community Champion

Hi @Anonymous

You should create a relationship between both the tables on ID column.

Also, IF you already have a column for dept created then use the below measure.

``````_pcnt  =

DIVIDE(CALCULATE(COUNT(Medical_Exams[id]),ALLEXCEPT(Medical_Exams, Medical_Exams[Departament])),
CALCULATE(COUNT(Employees[id]),ALLEXCEPT(Employees, Employees[Departament])),0)``````

Once this measure is created click on the measure name and change the format to percentage and give 2 decimal precision.

Announcements

#### Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

#### Power BI Monthly Update - June 2024

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

#### New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

Top Solution Authors
Top Kudoed Authors