Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

RANKX - Ranking Total Sales

Hi All,

 

I have been reading a bit on DAX and trying to work out how the RANKX formula works.

 

I have the below list of data and trying to rank it by sales. My formula is Sales Rank = RANKX(ALL(Sales),[Total Sales])

The below is the result I get (have used Excel in this example) 

 

I have tried to use Sales Rank = RANKX(ALL(Sales[Client]),[Total Sales]) which works properly but it doesn't work when I change the pivottable rows to Sector. Is there a reason why I can't use ALL on the entire table?

 

 

ClientSectorSales
AF&B125
BTech456
AF&B98
BTech546
CTech564
CTech132
DAuto189
EFinancial456
EFinancial542
EFinancial652
EFinancial745
FEnergy897
FEnergy564
FEnergy132
GF&B52
GF&B54
GF&B87
GF&B98
GF&B132

 

Thanks All!

6 Replies

  • v-frfei-msft's avatar
    v-frfei-msft
    Community Support

    Hi Anonymous ,

     

    Please update your formula as below.

    Measure = RANKX(ALL(Sales[Client]),[Total sales],,DESC,Dense)

     

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thanks for your help. If I want to rank total sales by sector, I need to write another DAX formula as below?

      Measure = RANKX(ALL(Sales[Sector]),[Total sales],,DESC,Dense)

       

  • az38's avatar
    az38
    Community Champion

    Hi Anonymous 

    how do you get [Total Sales] measure?

     

    do not hesitate to give a kudo to useful posts and mark solutions as solution

    • Anonymous's avatar
      Anonymous
      Not applicable

      Total Sales = Sum(SalesTable[Sales])

  • In case you take all


    Rank = RANKX(all(Sheet1[Client]),CALCULATE(SUM(Sheet1[Sales])),,DESC,Dense)

     

    Rank will change with another field you add and give a ranking of the client inside that group.

    What is expected outcome

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi

       

      I am just trying to understand why Sales Rank = RANKX(ALL(Sales),[Total Sales]) doesn't work

      Can I not just take the entire sales table?

       

      If I wanted to group by sector, I need to write another DAX formula like: Sales Rank = RANKX(ALL(Sales[Sector]),[Total Sales])