cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
CKWong
Frequent Visitor

Running Total of "Amount" field based on the "Amount" field itself that contains same figures

With the following table, I would like to write a measure that calculates the running total of the "Amount" field based on the sorted "Amount" field.

Input:

ProductAmount
A5
B20
C20
D50
E10
F30

Ideal Output:

ProductAmountRunning Total
D5050
F3080
B20100
C20120
E10130
A5135

But with the following DAX formula "Running Amount", I could not achieve the ideal output as there are two Products with the same Amount, i.e. B and C. Because of this, the FILTER function returns two rows at the same time, which gives the sum of 40, that resulted in the actual output below.

 

 

Running Amount = 
CALCULATE(
    SUM(Sheet1[Amount]),
    FILTER(
        ALLSELECTED('Sheet1'),
        Sheet1[Amount] >= MIN(Sheet1[Amount])
    )
)

 

 

Actual Output: Instead of summing to 100 from 80, the calculation jumps directly to summing 40 for the next two rows after 80.

ProductAmountRunning Total
D5050
F3080
B20120
C20120
E10130
A5135

 

Any advice would be greatly appreciated.

1 ACCEPTED SOLUTION

@CKWong , I create a column

Amount1 = [Amount] + RAND()/10000

 

and measure

Running Amount = 
CALCULATE(
    SUM('Table'[Amount]),
    FILTER(
        ALLSELECTED('Table'),
        'Table'[Amount1] >= MIN('Table'[Amount1])
    )
)

 

but position of 100 and 120 can swap

Did I answer your question? Mark my post as a solution! Appreciate your Kudos!! !!
Dashboard of My Blogs !! Connect on Linkedin

Learn Power BI Beginners !! Advance Power BI Concepts !! Power BI For Tableau User !! Learn Power BI in Hindi !!
Proud to be a Super User!

View solution in original post

3 REPLIES 3
amitchandak
Super User
Super User

@CKWong , Create a rank with Random variable(to break tie)  and try to use that. 

Did I answer your question? Mark my post as a solution! Appreciate your Kudos!! !!
Dashboard of My Blogs !! Connect on Linkedin

Learn Power BI Beginners !! Advance Power BI Concepts !! Power BI For Tableau User !! Learn Power BI in Hindi !!
Proud to be a Super User!

@CKWong , I create a column

Amount1 = [Amount] + RAND()/10000

 

and measure

Running Amount = 
CALCULATE(
    SUM('Table'[Amount]),
    FILTER(
        ALLSELECTED('Table'),
        'Table'[Amount1] >= MIN('Table'[Amount1])
    )
)

 

but position of 100 and 120 can swap

Did I answer your question? Mark my post as a solution! Appreciate your Kudos!! !!
Dashboard of My Blogs !! Connect on Linkedin

Learn Power BI Beginners !! Advance Power BI Concepts !! Power BI For Tableau User !! Learn Power BI in Hindi !!
Proud to be a Super User!

View solution in original post

AllisonKennedy
Super User
Super User

You'll have to break the tie. See if this helps, then use it for running total: https://databear.com/how-to-use-the-dax-rankx-function-in-power-bi/

Please @mention me in your reply if you want a response.

Check out my Tokyo 2020 report with live stats - KUDOS much appreciated

Has this post solved your problem? Please Accept as Solution so that others can find it quickly and to let the community know your problem has been solved.
If you found this post helpful, please give Kudos C

I work as a Microsoft trainer and consultant, specialising in Power BI and Power Query.
www.excelwithallison.com

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

November Power BI Update 768x460.png

Check it Out!

Click here to read more about the November 2021 Updates!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.