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!To celebrate FabCon Vienna, we are offering 50% off select exams. Ends October 3rd. Request your discount now.
Hi,
In this topic:
https://carldesouza.com/total-month-to-date-totalmtd-totalqtd-totalytd-datesmtd-power-bi/
There is a description of how this measure:
MTD = TOTALMTD(SUM(Orders[Amount]), Dates[Date], FILTER(Dates, Dates[Date] < TODAY()))
Can be used to have the previous months showing the full amounts, and the current month showing the MTD up to yesterday, as per this screenshot:
The challenge I have is to calculate the proper monthly $ variances from such a table. For all the complete months, this is basically using [MTD]-[PMTD]. However, for the current month, the calculation should compare the MTD up to yesterday, with the PMTD of the same day, a month ago, to see how much we increased vs. the same day last month, eg on the same period. And the results should all be in the same column, in order to create the proper visuals.
Tried many measures to achieve this but having no luck so far. Any ideas?
Thanks in advance for your help!
Erik
Solved! Go to Solution.
Thanks for the suggestions. After reviewing them and reading many more posts, the following solution worked:
Step 1. In the Transactions table, added this calculated column:
Step 2. Created a measure using the "Values" function, which uses the step 1 column as a condition, in order to "assign" one of the two measures: MoM for completed months, and MTD for the current month.
Thanks for the suggestions. After reviewing them and reading many more posts, the following solution worked:
Step 1. In the Transactions table, added this calculated column:
Step 2. Created a measure using the "Values" function, which uses the step 1 column as a condition, in order to "assign" one of the two measures: MoM for completed months, and MTD for the current month.
MTD :=
calculate(
[Total Amount],
Dates[Date] < TODAY(),
DATESMTD( Dates[Date] )
)
PYMTD :=
var __effectiveDates =
CALCULATETABLE(
VALUES( Dates[Date] ),
KEEPFILTERS( Dates[Date] < TODAY() )
)
return
calculate(
[MTD],
SAMEPERIODLASTYEAR( __effectiveDates )
)
Best
D
Time intelligence functions are really just syntax sugar for FILTER. If you want explicit control over your date filters, see if my Time Intelligence the Hard Way provides a different way of accomplishing what you are going for.
https://community.powerbi.com/t5/Quick-Measures-Gallery/Time-Intelligence-quot-The-Hard-Way-quot-TIT...