Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Create a progressive SUM that is dependent from another column

Hi all,

My problem is:

I created a Table with the look of Power BI.
In it, I put a column called 'Label' and a measure called 'Value' which gives me the total value.
The 'Label' data and the values obtained by the 'Amount' measure come from different tables.

What I want:

Create a measure that gives me, per line, the sum of the previous lines, as shown in this table.
When the value of the table or ranking is the smallest, it displays BLANK()

LabelRankAmountProgressive SUM
United Stated150000193000
Austalia240000143000
UK338000103000
Germany43500065000
France530000Blank()


Thanks for your help.

 

  • Anonymous try this 

     



     

     

    Progressive sum = 
    VAR _MaxRank =
        CALCULATE ( MAX ( Rank1[Rank] ), ALL () )
    /*VAR _calc =
        CALCULATE (
            MIN ( Rank1[Amount] ),
            FILTER ( ALL ( Rank1 ), Rank1[Rank] = _MaxRank )
        )*/
    VAR _getRank =
        MAX ( Rank1[Rank] )
    VAR _rt =
        CALCULATE (
            SUM ( Rank1[Amount] ),
            FILTER ( ALL ( Rank1 ), Rank1[Rank] >= _getRank )
        )
    RETURN
        IF ( MAX ( Rank1[rank] ) = _MaxRank, "Blank()", _rt )
    

     

     


    Let me know if you have any questions.

    If this solves your issues, please mark it as the solution, so that others can find it easily. Kudos ๐Ÿ‘are nice too.
    Nathaniel

2 Replies

  • Nathaniel_C's avatar
    Nathaniel_C
    Icon for Community Champion rankCommunity Champion

    Anonymous try this 

     



     

     

    Progressive sum = 
    VAR _MaxRank =
        CALCULATE ( MAX ( Rank1[Rank] ), ALL () )
    /*VAR _calc =
        CALCULATE (
            MIN ( Rank1[Amount] ),
            FILTER ( ALL ( Rank1 ), Rank1[Rank] = _MaxRank )
        )*/
    VAR _getRank =
        MAX ( Rank1[Rank] )
    VAR _rt =
        CALCULATE (
            SUM ( Rank1[Amount] ),
            FILTER ( ALL ( Rank1 ), Rank1[Rank] >= _getRank )
        )
    RETURN
        IF ( MAX ( Rank1[rank] ) = _MaxRank, "Blank()", _rt )
    

     

     


    Let me know if you have any questions.

    If this solves your issues, please mark it as the solution, so that others can find it easily. Kudos ๐Ÿ‘are nice too.
    Nathaniel

  • Hi Anonymous 

     

    Try this:

    Measure = 
    Var _M = CALCULATE(max('Table'[Rank]),all('Table'))
    Var _A = CALCULATE(sum('Table'[Amount]),filter(all('Table'),'Table'[Rank]>=max('Table'[Rank])))
    return
    if(MAX('Table'[Rank])=_M,BLANK(),_A)

     

    Output:

     

     

    If this post helps, please consider accepting it as the solution to help the other members find it more quickly.
    Appreciate your Kudos!!
    LinkedIn: 
    www.linkedin.com/in/vahid-dm/