Forum Discussion
Dharini
7 years agoFrequent Visitor
create rank column based on column using dax
Greetings !! I have a region slicer which drop downs as Test1, Test2 , Test3. And a Rank slicer which has ranges and occurs based on the Rank column. i have data set given below . Region ...
- 7 years ago
You can create the column like this:
Column = VAR CurVal = [Text Value] RETURN CALCULATE( RANKX( Data, [Text Value], CurVal, ASC, Dense ), ALLEXCEPT( Data, Data[Region] ) )
Dharini
7 years agoFrequent Visitor
LivioLanzo Thanks for your help!! but i am stuck with the calculation
I have created a column as you has specified with ranking order to be desc as given below.
Column =
VAR CurVal = [Text Value]
RETURN
CALCULATE(
RANKX( Data, [Text Value], CurVal, Desc, Dense ),
ALLEXCEPT( Data, Data[Region] )
)
For the dataset given below, calculated column is working as shown .
| Region | ProjectName | Text Value | Expected RNK |
| Test1 | wewqe | 5.00 | 1 |
| Test1 | yuy | 5.00 | 1 |
| Test2 | ty | 20.35 | 1 |
| Test2 | ty | 5.00 | 2 |
| Test3 | wewrt | 48.73 | 3 |
| Test3 | frtrre | 78.39 | 2 |
| Test3 | sdada | 5.00 | 1 |
For the Region "Test3" , rank is calculated wrongly as shown above.
Rank should be calculated as
| Test3 | wewrt | 48.73 | 2 |
| Test3 | frtrre | 78.39 | 1 |
| Test3 | sdada | 5.00 | 3 |
Kindly do needful.
LivioLanzo
7 years agoSolution Sage
Hi Dharini
If you wish the rank to happen the other way around, you just need to change this argument of the RANKX function:
RANKX( Data, [Text Value], CurVal, ASC, Dense )