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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
firdaus62
Frequent Visitor

Filter only latest 3-month data

In power query, I want to limit the amount of data loaded into the model by only including new data within the last 3 months from the excel.  So far found this forums, however it doesnt work with my case.  Solved: Include only Latest 3 months of data - Microsoft Power BI Community

 

Example:

  • I want only the latest rolling 3 month:                                  1st April 2022 to 31st Jun 2022
  • But I get this when I follow the forums:                                Blank result.


I use this filter to filter the Production Month column to only load the latest 3 months data.
= Table.SelectRows(#"Renamed Columns", each Date.IsInPreviousNMonths([Production Month], 3))

For addition info,
- I have production data from Jan 2019 to Jun 2022

- my initial data was in excel format

- my final option is to just filter the excel by only put in the latest 3 month data, however in future when there is new month for new data, I need to replace the source of the excel with updated one manually.

1 ACCEPTED SOLUTION
Anonymous
Not applicable

Hi @firdaus62 ,

 

Please try this.

= Table.SelectRows(#"Changed Type", each [Date] > Date.AddMonths(Date.EndOfMonth(List.Max(#"Changed Type"[Date])),-3) and [Date] <= Date.EndOfMonth(List.Max(#"Changed Type"[Date])))

 

All steps.

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("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", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Date = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}}),
    #"Filtered Rows" = Table.SelectRows(#"Changed Type", each [Date] > Date.AddMonths(Date.EndOfMonth(List.Max(#"Changed Type"[Date])),-3) and [Date] <= Date.EndOfMonth(List.Max(#"Changed Type"[Date])))
in
    #"Filtered Rows"

Best Regards,
Gao

Community Support Team

 

If 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

View solution in original post

3 REPLIES 3
Anonymous
Not applicable

Try this dax

SalesLast3Months = CALCULATE(SUM(Sales[Amount]), DATESINPERIOD('Calendar'[Date], LASTDATE('Calendar'[Date]), -3, MONTH))

 

Give a Kudos

Hi & thanks for replying,

 Below is the table that I have, my intention is to filter the data just to show latest 3 months of data so that all my report will reflect to show the latest 3 months data.

firdaus62_0-1678067049697.png

 

Anonymous
Not applicable

Hi @firdaus62 ,

 

Please try this.

= Table.SelectRows(#"Changed Type", each [Date] > Date.AddMonths(Date.EndOfMonth(List.Max(#"Changed Type"[Date])),-3) and [Date] <= Date.EndOfMonth(List.Max(#"Changed Type"[Date])))

 

All steps.

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("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", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Date = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}}),
    #"Filtered Rows" = Table.SelectRows(#"Changed Type", each [Date] > Date.AddMonths(Date.EndOfMonth(List.Max(#"Changed Type"[Date])),-3) and [Date] <= Date.EndOfMonth(List.Max(#"Changed Type"[Date])))
in
    #"Filtered Rows"

Best Regards,
Gao

Community Support Team

 

If 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

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors