cancel
Showing results for
Did you mean:
Helper I

## Rank using 2 measures

Hi! Need Help!

I want to create a rank measure, using 2 measures, not columns. Rankx seems to work  for columns in tables.

I want to rank the sales representative base on location sales size and total sales for the period.

Please see the sample pbix that i made. Thank you!

1 ACCEPTED SOLUTION
Community Support

Hi , @FreedJustine

Here is a demo.

Pbix attached

1.Create measure 'Rank1'as below

``````Rank 1 =
SWITCH(TRUE(),
[Average Sales per Month]<2000000,1,
[Average Sales per Month]>4000000,3,
[Average Sales per Month]>=2000000 && [Average Sales per Month] <=4000000,2)``````

2.Create measure "RankValue" as below:

``````rankvalue =
RANKX (
GROUPBY ( ALLSELECTED ( 'Sales' ), Sales[Location], Sales[Sales Rep] ),
CALCULATE ( [Rank 1] )
+ RANKX (
GROUPBY ( ALLSELECTED ( 'Sales' ), Sales[Location], Sales[Sales Rep] ),
CALCULATE ( SUM ( 'Sales'[Total Sales] ) ),
,
ASC,
DENSE
)
/ CALCULATE ( COUNTROWS ( 'Sales' ), ALLSELECTED () ),
,
DESC,
DENSE
)``````

3. It will show as below

Best Regards,
Community Support Team _ Eason
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 , @FreedJustine

Here is a demo.

Pbix attached

1.Create measure 'Rank1'as below

``````Rank 1 =
SWITCH(TRUE(),
[Average Sales per Month]<2000000,1,
[Average Sales per Month]>4000000,3,
[Average Sales per Month]>=2000000 && [Average Sales per Month] <=4000000,2)``````

2.Create measure "RankValue" as below:

``````rankvalue =
RANKX (
GROUPBY ( ALLSELECTED ( 'Sales' ), Sales[Location], Sales[Sales Rep] ),
CALCULATE ( [Rank 1] )
+ RANKX (
GROUPBY ( ALLSELECTED ( 'Sales' ), Sales[Location], Sales[Sales Rep] ),
CALCULATE ( SUM ( 'Sales'[Total Sales] ) ),
,
ASC,
DENSE
)
/ CALCULATE ( COUNTROWS ( 'Sales' ), ALLSELECTED () ),
,
DESC,
DENSE
)``````

3. It will show as below

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

Helper I

Thank you very much! this the result im looking for. However i have additional problem, average monthly sales now is base on pre determine values per locations group.

Locations Group:

 Group 1 Group 2 Group 3 BA North South West North-East South-East East North-West South-West HO

Requirement to determine the locations sales size:

 Average Monthly Sales requirement Group Small (1) Medium (2) Large (3) Group 1 <2000000 >=2000000 <=4000000 >4000000 Group 2 <1000000 >=1000000 <=5000000 >5000000 Group 3 <1000000 >=1000000 <=3000000 >3000000

I was thinking if i can apply in

```Rank 1 =
SWITCH(TRUE(),
[Average Sales per Month]<2000000,1,
[Average Sales per Month]>4000000,3,
[Average Sales per Month]>=2000000 && [Average Sales per Month] <=4000000,2)```

When I try to add the group its not working.

Super User

Refer, these. Rank is best explained

Super User

@FreedJustine what you mean rank by location sales size and total sales for the period

you wan to rank each sales person in the location by the sales, or each location in the sale person by sales?

Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤

Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.