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

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
olimilo
Post Prodigy
Post Prodigy

RANKX always returns 1

I've already inspected the other threads with the same dilemma, but most of them are running with SUMs of a numeric column. I'm trying to get the rank of an item through the number of instances it has appeared on the table (ie: COUNTROWS). Using the formula below, I always get a 1 on my Rank.

 

I'm pretty sure I've no problems with the [# of Violations] not having a CALCULATE since it's already a calculated measure, which seems to be the cause of the problem most of the posts for RANKX. I'd like to point out that I'm also using Page-level filters, unsure if this will affect the measure in any way.

 

 

' Measure
# of Violations = COUNTROWS(Violations)

' Measure
Rank = 
    RANKX(
        ALLSELECTED('Violations'),
        [# of Violations], , DESC, Dense
    )

 

Below is the expected result from the sample data:

 

Violation2017Rank2018Rank
A6172
B4381
C5253

 

SiteViolationInspectedYear Inspected
A1A1/1/20172017
A1B1/1/20172017
A2C1/1/20172017
A3A1/1/20172017
A1B1/1/20172017
A2C1/1/20172017
A3A1/1/20172017
A1B1/1/20172017
A2C1/1/20172017
A3A1/1/20172017
A1B1/1/20172017
A2C1/1/20172017
A3C1/1/20172017
A1A1/1/20172017
A3A1/1/20172017
A1A1/1/20182018
A2B1/1/20182018
A3C1/1/20182018
A1A1/1/20182018
A1B1/1/20182018
A2C1/1/20182018
A3A1/1/20182018
A1B1/1/20182018
A3C1/1/20182018
A1A1/1/20182018
A2B1/1/20182018
A1C1/1/20182018
A1A1/1/20182018
A2B1/1/20182018
A3B1/1/20182018
A1B1/1/20182018
A2A1/1/20182018
A3A1/1/20182018
A1B1/1/20182018
A2C1/1/20182018

 

Would like to know how to solve this. Any input is definitely appreciated.

1 ACCEPTED SOLUTION
Zubair_Muhammad
Community Champion
Community Champion

Hi @olimilo

 

A tiny change in your formula is needed Smiley Wink

 

Rank =
RANKX ( ALLSELECTED ( Violations[Violation] ), [# of Violations],, DESC, DENSE )

 

View solution in original post

5 REPLIES 5
Ashish_Mathur
Super User
Super User

Hi,

 

This too should work

 

=RANKX ( ALL ( Violations[Violation] ), [# of Violations],, DESC, DENSE )

 

I dont think the ALLSELECTED function is required.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
mattbrice
Solution Sage
Solution Sage

Please try replacing your ALLSELECTED statement with this

 

ALLSELECTED('Violations'[Violation] )

Thanks for the help everyone! Although I find it weird that I had to indicate the column I'm going to be working on. I thought that using it on the measure would be enough.

 

Zubair_Muhammad
Community Champion
Community Champion

Hi @olimilo

 

A tiny change in your formula is needed Smiley Wink

 

Rank =
RANKX ( ALLSELECTED ( Violations[Violation] ), [# of Violations],, DESC, DENSE )

 

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

Check out the November 2025 Power BI update to learn about new features.

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors
Top Kudoed Authors