Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hello!
Looking for help writing a formula:
Year over year comparison by month.
The oldest data I have is Jan 2023.
I have the following so far:
I do not want YoY Var to populate for 2023 because there is no historical data to compare to and I do not want 2024 YoY Var to populate in months that have not happened yet.
Any help woul dbe appreciated. Thank you!
Solved! Go to Solution.
Hi @dgeg ,
You can try formula like below:
YoY Var =
IF (
ISFILTERED ( 'Calendar'[Date] ),
ERROR ( "Time intelligence quick measures can only be grouped or filtered by the Power BI-provided date hierarchy or primary date column." ),
VAR __CURR_MONTH = [Monthly Spend]
VAR __PREV_YEAR_MONTH =
CALCULATE (
[Monthly Spend],
FILTER (
ALL ( 'Calendar' ),
YEAR ( 'Calendar'[Date] )
= YEAR ( MAX ( 'Calendar'[Date] ) ) - 1
&& MONTH ( 'Calendar'[Date] ) = MONTH ( MAX ( 'Calendar'[Date] ) )
)
)
RETURN
IF (
YEAR ( MAX ( 'Calendar'[Date] ) ) > 2023
&& MONTH ( MAX ( 'Calendar'[Date] ) ) > MONTH ( TODAY () ),
BLANK (),
IF (
NOT ( ISBLANK ( __PREV_YEAR_MONTH ) ),
__CURR_MONTH - __PREV_YEAR_MONTH,
BLANK ()
)
)
)
Best Regards,
Adamk Kong
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @dgeg ,
You can try formula like below:
YoY Var =
IF (
ISFILTERED ( 'Calendar'[Date] ),
ERROR ( "Time intelligence quick measures can only be grouped or filtered by the Power BI-provided date hierarchy or primary date column." ),
VAR __CURR_MONTH = [Monthly Spend]
VAR __PREV_YEAR_MONTH =
CALCULATE (
[Monthly Spend],
FILTER (
ALL ( 'Calendar' ),
YEAR ( 'Calendar'[Date] )
= YEAR ( MAX ( 'Calendar'[Date] ) ) - 1
&& MONTH ( 'Calendar'[Date] ) = MONTH ( MAX ( 'Calendar'[Date] ) )
)
)
RETURN
IF (
YEAR ( MAX ( 'Calendar'[Date] ) ) > 2023
&& MONTH ( MAX ( 'Calendar'[Date] ) ) > MONTH ( TODAY () ),
BLANK (),
IF (
NOT ( ISBLANK ( __PREV_YEAR_MONTH ) ),
__CURR_MONTH - __PREV_YEAR_MONTH,
BLANK ()
)
)
)
Best Regards,
Adamk Kong
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
@dgeg Try: Better Year Over Year Change - Microsoft Fabric Community
You may find this helpful - https://community.powerbi.com/t5/Community-Blog/To-bleep-With-Time-Intelligence/ba-p/1260000
Also, 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...