Advance your Data & AI career with 50 days of live learning, dataviz contests, hands-on challenges, study groups & certifications and more!
Get registeredGet Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now
Hi,
I wanna display Last 12 months sales data and those MOM% and using an other slicer for time selection.
Here is what I'd like to show in Power BI:
I am able to achieve Last 12 months sales by using "DATESINPERIOD" function but now I am struggling with those MOM%. The DAX I used as follows.
Any help is appreciated
Regards,
Jack
Last 12 month MOM% =
VAR _Currentdate =
DATE ( SELECTEDVALUE ( 'Date'[Year] ), SELECTEDVALUE ( 'Date'[Month] ), 1 )
VAR _Last12month =
CALCULATE (
SUM ( 'Sales'[Actual] ),
DATESINPERIOD ( 'Date'[Date], _Currentdate, - 12, MONTH )
)
VAR _PREV_MONTH =
CALCULATE ( _Last12month, DATEADD ( 'Date'[Date], -1, MONTH ) )
RETURN
_PREV_MONTH
Hi,
I am not sure if I understood your question correctly, but please try something like below whether it works in your datamodel.
Last 12 month MOM% fix =
VAR _Currentdatemonthstart =
DATE ( SELECTEDVALUE ( 'Date'[Year] ), SELECTEDVALUE ( 'Date'[Month] ), 1 )
VAR _Currentdateprevmonthstart =
IF (
SELECTEDVALUE ( 'Date'[Month] ) <> 1,
DATE ( SELECTEDVALUE ( 'Date'[Year] ), SELECTEDVALUE ( 'Date'[Month] ) - 1, 1 ),
DATE ( SELECTEDVALUE ( 'Date'[Year] ) - 1, 12, 1 )
)
VAR _Last12month =
CALCULATE (
SUM ( 'Sales'[Actual] ),
DATESINPERIOD ( 'Date'[Date], _Currentdatemonthstart, - 12, MONTH )
)
VAR _PREV_MONTH_12month =
CALCULATE (
SUM ( 'Sales'[Actual] ),
DATESINPERIOD ( 'Date'[Date], _Currentdateprevmonthstart, - 12, MONTH )
)
RETURN
DIVIDE ( _Last12month - _PREV_MONTH_12month, _PREV_MONTH_12month )
Dear Kim,
Thanks so much for your reply. I have just tried with your suggestion but the results as the following photo. Maybe I haven't solved my problem yet.
I have used three Measures as follows:
1. Monthly Sales =
VAR _Currentdatemonthstart = DATE ( SELECTEDVALUE ( 'Date'[Year] ), SELECTEDVALUE ('Date'[Month] ), 1 )
VAR _Last12month = CALCULATE (SUM ( 'Sales'[Actual] ),DATESINPERIOD ( 'Date'[Date], _Currentdatemonthstart, - 12, MONTH ))
RETURN
_Last12month
2. Previous Month Sales =
VAR _Currentdateprevmonthstart = IF (SELECTEDVALUE ( 'Date'[Month] ) <> 1,
DATE ( SELECTEDVALUE ( 'Date'[Year] ), SELECTEDVALUE ( 'Date'[Month] ) - 1, 1 ),
DATE ( SELECTEDVALUE ( 'Date'[Year] ) - 1, 12, 1 ) )
VAR _PREV_MONTH_12month = CALCULATE (SUM ( 'Sales'[Actual] ), DATESINPERIOD ( 'Date'[Date], _Currentdateprevmonthstart, - 12, MONTH ))
RETURN
_PREV_MONTH_12month
3. MOM% : The DAX is as same as you suggested.
Thanks again.
Best Regards,
Jack
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!
Check out the October 2025 Power BI update to learn about new features.
| User | Count |
|---|---|
| 7 | |
| 6 | |
| 4 | |
| 4 | |
| 4 |
| User | Count |
|---|---|
| 25 | |
| 17 | |
| 9 | |
| 8 | |
| 7 |