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

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
Anonymous
Not applicable

Previous 6 months Data

Hi all,
Need your assistance to find a formula to write the DAX for previous 6 months.
Between Aug 2020 to Dec 2020, there is no value.

Below screenshot of desired ouput
Capture.JPG
Regards
Hidayat

1 ACCEPTED SOLUTION
V-lianl-msft
Community Support
Community Support

Hi @Anonymous ,

 

Create a Yearmonth column from the date column.

year_month = YEAR('table'[date])*100+MONTH('table'[date])

Create index columns based on month and year.

month_index = 
VAR MonthRow = 'table'[year_month]
RETURN
    CALCULATE (
        DISTINCTCOUNT ( 'table'[year_month] ),
        FILTER ('table','table'[year_month] <= MonthRow )
    )

Create an unrelated calendar table as slicer.

Table 2 = SELECTCOLUMNS('table',"DateKey",'table'[date],"YearMonth",'table'[year_month])

Create a measure and apply it to a visual level filter.

Last6Months = 
//Get the year_month from the slicer
var max_date = SELECTEDVALUE('Table 2'[YearMonth])
//Get the index of year_month
var _mindex = CALCULATE(MAX('table'[month_index]),FILTER(ALL('table'),'table'[year_month]=max_date))
//Get the min year_month of the last six months
var min_date = CALCULATE(MIN('table'[year_month]),FILTER(ALL('table'),'table'[month_index]=_mindex-5))
return IF(MAX('table'[year_month])>=min_date&&MAX('table'[year_month])<=max_date,1,0)

Sample .pbix

 

Best Regards,
Liang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

3 REPLIES 3
V-lianl-msft
Community Support
Community Support

Hi @Anonymous ,

 

Create a Yearmonth column from the date column.

year_month = YEAR('table'[date])*100+MONTH('table'[date])

Create index columns based on month and year.

month_index = 
VAR MonthRow = 'table'[year_month]
RETURN
    CALCULATE (
        DISTINCTCOUNT ( 'table'[year_month] ),
        FILTER ('table','table'[year_month] <= MonthRow )
    )

Create an unrelated calendar table as slicer.

Table 2 = SELECTCOLUMNS('table',"DateKey",'table'[date],"YearMonth",'table'[year_month])

Create a measure and apply it to a visual level filter.

Last6Months = 
//Get the year_month from the slicer
var max_date = SELECTEDVALUE('Table 2'[YearMonth])
//Get the index of year_month
var _mindex = CALCULATE(MAX('table'[month_index]),FILTER(ALL('table'),'table'[year_month]=max_date))
//Get the min year_month of the last six months
var min_date = CALCULATE(MIN('table'[year_month]),FILTER(ALL('table'),'table'[month_index]=_mindex-5))
return IF(MAX('table'[year_month])>=min_date&&MAX('table'[year_month])<=max_date,1,0)

Sample .pbix

 

Best Regards,
Liang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

amitchandak
Super User
Super User

Try like with date table

Rolling 6 = CALCULATE(Average(Table[Trade Price]),DATESINPERIOD('Date'[Date],ENDOFMONTH(Sales[Sales Date]),-6,MONTH))

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
Anonymous
Not applicable

Hi @amitchandak ,

Not looking for average in the statement.
I would need the statement to lookup the last 6 month record.

Regards
Hidayat

Helpful resources

Announcements
July PBI25 Carousel

Power BI Monthly Update - July 2025

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

Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.