This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreLevel up your Power BI skills this month - build one visual each week and tell better stories with data! Get started
Hi there,
I am trying to rank employees based on if they have hit their 3 different monthly goals and then rank them by the % to goal.
| Employee | Sales Item 1 | Goal 1 | % To goal 1 | Sales Item 2 | Goal 2 | % To Goal 2 | Sales Item 3 | Goal 3 | % To Goal 3 | How many goals hit (/3) | % to Total Goal (30) | Rank |
| A | 5 | 5 | 100% | 10 | 10 | 100% | 15 | 15 | 100% | 3 | 300% | 1 |
| B | 5 | 5 | 100% | 9 | 10 | 90% | 4 | 15 | 27% | 2 | 217% | 3 |
| C | 1 | 5 | 20% | 2 | 10 | 20% | 20 | 15 | 133% | 1 | 173% | 5 |
| D | 7 | 5 | 140% | 1 | 10 | 10% | 10 | 15 | 67% | 1 | 217% | 4 |
| E | 2 | 5 | 40% | 15 | 10 | 150% | 25 | 15 | 167% | 2 | 357% | 2 |
In the example above, employee A has a lower total % to goal than employee E, but employee A hit all three goals which puts them higher ranked.
My three Sales Items columns are all Measures that I calculated. I tried using the following DAX where 'Table'[GPA] = 'Table'[How Many goals hit /3] and [income] = [% to total Goal]
RankedByGPA(Income) =
RANKX(ALL('Table'),
RANKX (ALL('Table'), 'Table'[GPA])
+ DIVIDE(
RANKX(ALL('Table'), 'Table'[Income]),
(COUNTROWS(ALL('Table')) + 1)
)
, , ASC)But I believe my measures are creating the wrong calculations.
Any guidance would be much appreciated!!
Solved! Go to Solution.
Hi @KW123 please try this
Hi @KW123 please try using these 3 measures
Thank you for the reply!!
That is so close to working. I created the exact measures you listed however it is ranking the empoyees as a whole rather for just the selected time period. See screen shot below.
Additionally, I tried to use the PBI filter to only show the top 5 (which is what the stakeholder has requested) and it is not showing the top 5.
Hi @KW123 please try this
Thank you so much!!!! That worked!!! I really appreciate your help with this.
@KW123 , Try using
DAX
RankedByGoalsAndIncome =
RANKX(
ALL('Table'),
'Table'[How many goals hit (/3)] +
DIVIDE('Table'[% to Total Goal (30)], 1000),
,
DESC
)
Proud to be a Super User! |
|
Thank you so much for that!!
I tried it and It returned values of all 1. I am not sure if it is because of my measures?
The measure for each of the three sales items are
[SalesItem1] =
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
| User | Count |
|---|---|
| 5 | |
| 4 | |
| 3 | |
| 3 | |
| 3 |
| User | Count |
|---|---|
| 9 | |
| 9 | |
| 7 | |
| 6 | |
| 6 |