cancel
Showing results for
Did you mean:

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Anonymous
Not applicable

## Dividing a measure by the value of the measure where Rank =1

Hi,

I have two measures, a "Rank" and the "Measure".  I need to divide all "Measure" by the "Measure" value where Rank =1.

This looks so easy but I can't get it to work!  any ideas greatly appreciated.  The "Desired" column is what I am trying to create.

 Rank Measure Desired 1 12000 1 2 10000 0.833333 3 8000 0.666667 4 5000 0.416667

2 ACCEPTED SOLUTIONS
Super User

To do a ranking you must be doing it over some column which is not visible in your sample data. So in the example below I've used a placeholder column called [Item] you will need to replace the reference to 'Table'[Item] with the reference to the actual column you are ranking over.

Once you do this a pattern like the following should work:

``````Desired =
var _rank1Measure = CALCULATE([Measure], FILTER(ALL('Table'[Item]),[Rank] = 1))
return DIVIDE([Measure], _rank1Measure)``````

Community Support

Hi @Anonymous

Create measures

``````Measure = SUM('Table'[value])

rank = RANKX(ALLSELECTED('Table'),[Measure],,DESC,Dense)

rank1 = CALCULATE([Measure],FILTER(ALLSELECTED('Table'),'Table'[rank]=1))

%1 = [Measure]/[rank1]``````

Best Regards
Maggie
Community Support Team _ Maggie Li
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
4 REPLIES 4
Community Support

Hi @Anonymous

Create measures

``````Measure = SUM('Table'[value])

rank = RANKX(ALLSELECTED('Table'),[Measure],,DESC,Dense)

rank1 = CALCULATE([Measure],FILTER(ALLSELECTED('Table'),'Table'[rank]=1))

%1 = [Measure]/[rank1]``````

Best Regards
Maggie
Community Support Team _ Maggie Li
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Super User

To do a ranking you must be doing it over some column which is not visible in your sample data. So in the example below I've used a placeholder column called [Item] you will need to replace the reference to 'Table'[Item] with the reference to the actual column you are ranking over.

Once you do this a pattern like the following should work:

``````Desired =
var _rank1Measure = CALCULATE([Measure], FILTER(ALL('Table'[Item]),[Rank] = 1))
return DIVIDE([Measure], _rank1Measure)``````

Anonymous
Not applicable

Superb, thanks this works.  This had really foxed me.

@mwegener - thanks I created the measures as you suggested but the slight issue was that within my data are multiple rows for the same entity and the top rank amount was not at the highest level

MVP

Hi @Anonymous ,

try this

``````Measure =
VAR Rank1 =
CALCULATE (
SUM ( 'Table'[Measure] ),
FILTER ( ALL ( 'Table' ), 'Table'[Rank] = 1 )
)
RETURN
DIVIDE ( SUM ( 'Table'[Measure] ), Rank1 )``````

Please mark my post as solution, this will also help others.

Marcus Wegener works as Full Stack Power BI Engineer at BI or DIE.
His mission is clear: "Get the most out of data, with Power BI."

Announcements

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

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

#### Power BI Monthly Update - May 2024

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

#### Fabric certifications survey

Certification feedback opportunity for the community.

Top Solution Authors
Top Kudoed Authors