Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hi,
I have a table with payments at different dates, associated with different conditions :
| Date | Sum | Condition |
| 01/01/2018 | 5 | A |
| 01/01/2018 | 20 | B |
| 02/01/2018 | 10 | B |
| 02/01/2018 | 20 | B |
| 03/01/2018 | 10 | A |
| 03/01/2018 | 20 | A |
| 04/01/2018 | 15 | B |
I would like to calculate the cumulative sum by date, by condition, such as :
| Date | Sum | Condition | Cumulative Sum |
| 01/01/2018 | 5 | A | 5 |
| 01/01/2018 | 20 | B | 20 |
| 02/01/2018 | 10 | B | 30 |
| 02/01/2018 | 20 | B | 50 |
| 03/01/2018 | 10 | A | 15 |
| 03/01/2018 | 20 | A | 25 |
| 04/01/2018 | 15 | B | 65 |
I found this in a similar post :
Cumulative Sum=
CALCULATE (
SUM (Table[Sum]), FILTER (ALL (Table[Date] ),Table[Date] <= MAX ( Table[Date])))
But I don't see how to adapt to my case, so it takes in account the condition.
Any ideas?
Solved! Go to Solution.
hi, @Anonymous
After my research, you could do these as below:
First is there some errors in your expected output “Cumulative Sum”
for 02/01/2018 condition B, why one row is 30 and another is 50
but 03/01/2018 condition A, why one row is 15 and another is 25
please check the expected output “Cumulative Sum”
and I have provided two formula for you to refer to:
result 1 =
CALCULATE (
SUM ( 'Table'[Sum] ),
FILTER (
ALL ( 'Table' ),
'Table'[Condition] = EARLIER ( 'Table'[Condition] )
&& 'Table'[Date] < EARLIER ( 'Table'[Date] )
)
)
+ 'Table'[Sum]result 2 =
CALCULATE (
SUM ( 'Table'[Sum] ),
FILTER (
ALL ( 'Table' ),
'Table'[Condition] = EARLIER ( 'Table'[Condition] )
&& 'Table'[Date] <= EARLIER ( 'Table'[Date] )
)
)Result:
here is pbix, please try it.
https://www.dropbox.com/s/wqt1qi8hphipnmk/Cumulative%20sum%20by%20date%20by%20condition.pbix?dl=0
Best Regards,
Lin
hi, @Anonymous
After my research, you could do these as below:
First is there some errors in your expected output “Cumulative Sum”
for 02/01/2018 condition B, why one row is 30 and another is 50
but 03/01/2018 condition A, why one row is 15 and another is 25
please check the expected output “Cumulative Sum”
and I have provided two formula for you to refer to:
result 1 =
CALCULATE (
SUM ( 'Table'[Sum] ),
FILTER (
ALL ( 'Table' ),
'Table'[Condition] = EARLIER ( 'Table'[Condition] )
&& 'Table'[Date] < EARLIER ( 'Table'[Date] )
)
)
+ 'Table'[Sum]result 2 =
CALCULATE (
SUM ( 'Table'[Sum] ),
FILTER (
ALL ( 'Table' ),
'Table'[Condition] = EARLIER ( 'Table'[Condition] )
&& 'Table'[Date] <= EARLIER ( 'Table'[Date] )
)
)Result:
here is pbix, please try it.
https://www.dropbox.com/s/wqt1qi8hphipnmk/Cumulative%20sum%20by%20date%20by%20condition.pbix?dl=0
Best Regards,
Lin
Hi Lin,
What is the difference between result 1 and result 2
Regards,
Sai
Hi Lin, you are right about the error in my cumulative sum. Your formula 'result 2' works perfectly, thank you very much!
the code you posted should work fine as long as you put the Condition in the visual - e.g. in rows
Check out the November 2025 Power BI update to learn about new features.
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!