Forum Discussion
Rolling Period
Hi All,
I need help with Calculating on Rolling period Basis. MAT means last 12 Month.
So I've to calculate Sales% basis Last 12 month for every month like
Jan'24 MAT (Feb23-Jan24)
Feb'24 MAT (Mar23-Feb'24)
Mar'24 MAT (Apr23-Mar24)
I've already created a measure Sales% = Sales/Total sales.
How to create MAT SALES% measure so whatever month is selected, it calculate basis last 12 month value.
- Anonymous2 years ago
Hi, kalpesh07
Thanks for bhanu_gautam reply. Here is the complementary method, which still primarily utilizes the time-intelligent function.Measure:
%Sales = VAR _dateEnd = SELECTEDVALUE ( 'Table'[Date] ) VAR _dateEndDay = DAY ( _dateEnd ) + 1 VAR _dateStart = EOMONTH ( _dateEnd, -13 ) + _dateEndDay VAR _monthStart = EOMONTH ( _dateEnd, -2 ) + _dateEndDay VAR _TotalSales = CALCULATE ( SUM ( 'Table'[Sales] ), 'Table'[Date] >= _dateStart && 'Table'[Date] <= _dateEnd ) VAR _MonthSales = CALCULATE ( SUM ( 'Table'[Sales] ), 'Table'[Date] >= _monthStart && 'Table'[Date] <= _dateEnd ) VAR _result = DIVIDE ( _MonthSales, _TotalSales ) RETURN _resultBest Regards,
Yang
Community Support TeamIf there is any post helps, then please consider Accept it as the solution to help the other members find it more quickly.
If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!How to get your questions answered quickly -- How to provide sample data in the Power BI Forum
2 Replies
- bhanu_gautamSuper User
kalpesh07 , You can achieve this by using DAX measures in Power BI
First make sure you have a date table in your model, if not than create one using
DateTable =ADDCOLUMNS (CALENDAR (DATE(2020, 1, 1), DATE(2030, 12, 31)),"Year", YEAR([Date]),"Month", MONTH([Date]),"MonthName", FORMAT([Date], "MMMM"),"YearMonth", FORMAT([Date], "YYYYMM"))Then create a sales measure
TotalSales = SUM(Sales[SalesAmount])Then create a sales percentage measure
SalesPercentage = DIVIDE([TotalSales], CALCULATE([TotalSales], ALL(Sales)))In Last create a new measure as Mat sales %
MAT Sales% =
VAR CurrentDate = MAX(DateTable[Date])
VAR StartDate = EDATE(CurrentDate, -11) -- 11 months back from the current month
RETURN
CALCULATE(
[SalesPercentage],
DATESBETWEEN(DateTable[Date], StartDate, CurrentDate)
) - AnonymousNot applicable
Hi, kalpesh07
Thanks for bhanu_gautam reply. Here is the complementary method, which still primarily utilizes the time-intelligent function.Measure:
%Sales = VAR _dateEnd = SELECTEDVALUE ( 'Table'[Date] ) VAR _dateEndDay = DAY ( _dateEnd ) + 1 VAR _dateStart = EOMONTH ( _dateEnd, -13 ) + _dateEndDay VAR _monthStart = EOMONTH ( _dateEnd, -2 ) + _dateEndDay VAR _TotalSales = CALCULATE ( SUM ( 'Table'[Sales] ), 'Table'[Date] >= _dateStart && 'Table'[Date] <= _dateEnd ) VAR _MonthSales = CALCULATE ( SUM ( 'Table'[Sales] ), 'Table'[Date] >= _monthStart && 'Table'[Date] <= _dateEnd ) VAR _result = DIVIDE ( _MonthSales, _TotalSales ) RETURN _resultBest Regards,
Yang
Community Support TeamIf there is any post helps, then please consider Accept it as the solution to help the other members find it more quickly.
If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!How to get your questions answered quickly -- How to provide sample data in the Power BI Forum