Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
TapZxK
Helper II
Helper II

cumulative monthly total

Hi Folks, 

 

I have written a measure that calculates cumulative monthly totals.

 

Total Rolling Expenses =
CALCULATE ( [Total Historical Expenses], DATESYTD ( 'Calendar'[Date], "8/31" ) )

 

Everything appears ok but i'm getting numbers for the future dates.

Any ideas how to remove values for the months that do not have the data yet. 

 

In the example below the data is available until month of January (Including) but as you can see the line extends until end of year with the same values as the values in January. 

 

TapZxK_0-1644919078086.png

 

BR,

TapZxK

 

1 ACCEPTED SOLUTION

Hi, @TapZxK 

You need to check if the parentheses match. The measure should be changed as:

 

Total Rolling Expenses =
IF (
    MAX ( 'Calendar'[Date] ) <= TODAY (),
    CALCULATE ( [Total Historical Expenses], DATESYTD ( 'Calendar'[Date], "8/31" ) ),
    BLANK ()
)

 

 

You can also create a measure as below and apply it to visual filter pane to filter data.

 

filter =
IF ( MAX ( 'Calendar'[Date] ) <= TODAY (), 1, 0 )

 

2.png

Best Regards,
Community Support Team _ Eason

View solution in original post

4 REPLIES 4
Anonymous
Not applicable

Hi, cool solution, but then the yearly total shows Blank() as well. Any idea how to still include the totals when using the IF function?

amitchandak
Super User
Super User

@TapZxK , You can have measures like

 


Total Rolling Expenses =
CALCULATE ( [Total Historical Expenses], DATESYTD ( 'Calendar'[Date], "8/31" ), 'Calendar'[Date]<=today() )

 

 or

 

Total Rolling Expenses =
if(max('Calendar'[Date]<=today()), CALCULATE ( [Total Historical Expenses], DATESYTD ( 'Calendar'[Date], "8/31" ), blank())

 

or in place of today use this from you fact Table

var _today = maxx(allselected(Fact), Fact[Date])

Share with Power BI Enthusiasts: Full Power BI Video (20 Hours) YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

Hi @amitchandak


Thanks for your prompt reply as always. 
I tried what You suggested. Unfortunately, it didn't work.

I'm still getting the same results. See Screenshots below. 

There are active 1 - To - Many relationships between Calendate[Date] -> Expenses[Date] Tables. 

 

TapZxK_0-1644933659008.png

 

When trying the below measure I'm getting an error, not sure why though. 

 

Total Rolling Expenses =
if(max('Calendar'[Date]<=today()), CALCULATE ( [Total Historical Expenses], DATESYTD ( 'Calendar'[Date], "8/31" ), blank())

TapZxK_1-1644933732276.png

 

Best Regards,

TapZxK

Hi, @TapZxK 

You need to check if the parentheses match. The measure should be changed as:

 

Total Rolling Expenses =
IF (
    MAX ( 'Calendar'[Date] ) <= TODAY (),
    CALCULATE ( [Total Historical Expenses], DATESYTD ( 'Calendar'[Date], "8/31" ) ),
    BLANK ()
)

 

 

You can also create a measure as below and apply it to visual filter pane to filter data.

 

filter =
IF ( MAX ( 'Calendar'[Date] ) <= TODAY (), 1, 0 )

 

2.png

Best Regards,
Community Support Team _ Eason

Helpful resources

Announcements
Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

Check out the October 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors