Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

How to create RankX formula that ignores the empty rows?

Hello everyone,
 
The ranking based on the formula below starts from 2 or 3, because there are empty rows:
 
Rank =
VAR rankOrder = RANKX (FILTER ( ALL ('AllRegions'[Modified],'AllRegions'[Title2],'AllRegions'[Index] ),
'AllRegions'[Title2]
=EARLIER('AllRegions'[Title2])),
'AllRegions'[Modified],,ASC)
RETURN IF([PriceOrigin22]<>BLANK(),rankOrder,BLANK())
 
Do you have any ideas how to amend the formula in order to start from 1 (and still ignoring the empty rows)?
 
Thanks,
Leo
  • Anonymous's avatar
    Anonymous
    4 years ago

    Hi Anonymous ,

    Please update the formula of your calculated column [Rank] as below and check if it can return the correct result...

    Rank =
    VAR rankOrder =
        RANKX (
            FILTER (
                ALL ( 'AllRegions'[Modified], 'AllRegions'[Title2], 'AllRegions'[Index] ),
                'AllRegions'[Title2] = EARLIER ( 'AllRegions'[Title2] )
                    && 'AllRegions'[PriceOrigin22] <> BLANK ()
            ),
            'AllRegions'[Modified],
            ,
            ASC
        )
    RETURN
        rankOrder

     

    If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. You can refer the following link to upload the file to the community. Thank you.

    How to upload PBI in Community

    Best Regards

3 Replies

  • Anonymous , if this column rank , you do not need all. Try like

     

    Rank =
    VAR rankOrder = RANKX (FILTER ( ('AllRegions'[Modified],'AllRegions'[Title2],'AllRegions'[Index] ),
    'AllRegions'[Title2]
    =EARLIER('AllRegions'[Title2]) && [PriceOrigin22]<>BLANK()),
    'AllRegions'[Modified],,ASC)
    RETURN IF([PriceOrigin22]<>BLANK(),rankOrder,BLANK())

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thanks amitchandak ,

       

      I tried it, but I am getting the following error message:

       

       

      [Modified] column is consisting of row data. All other columns in this formula are calculated.

       

      If I add All to the formula, it works, but the ranking starts at 2:

       

      • Anonymous's avatar
        Anonymous
        Not applicable

        Hi Anonymous ,

        Please update the formula of your calculated column [Rank] as below and check if it can return the correct result...

        Rank =
        VAR rankOrder =
            RANKX (
                FILTER (
                    ALL ( 'AllRegions'[Modified], 'AllRegions'[Title2], 'AllRegions'[Index] ),
                    'AllRegions'[Title2] = EARLIER ( 'AllRegions'[Title2] )
                        && 'AllRegions'[PriceOrigin22] <> BLANK ()
                ),
                'AllRegions'[Modified],
                ,
                ASC
            )
        RETURN
            rankOrder

         

        If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. You can refer the following link to upload the file to the community. Thank you.

        How to upload PBI in Community

        Best Regards