Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
I have a Fact sales table I would like to restrict data from 01 Jan 2025 to current date.
How to write the end date condition to always dynamically pick current date in Power Query
Solved! Go to Solution.
To dynamically filter your data up to the current date in Power Query, you can build a dynamic calendar based on your Fact Sales table.
Create a Start Date query:
Reference your Fact Sales table.
Keep only the column containing the start date (e.g., OrderDate), and remove all others.
Change the column type to Date.
Remove duplicates, then extract the earliest date using the "Drill Down" feature.
Rename this query to StartDate.
Create an End Date query:
Reference your Fact Sales table again.
Keep only the end date column (e.g., OrderDate or InvoiceDate), and remove all others.
Convert the column type to Date.
Remove duplicates, then extract the latest date using "Drill Down".
Rename this query to EndDate.
Press Enter. This will generate a dynamic list of dates from your earliest to latest available in the fact table.
You can then transform this list into a proper calendar table and add additional columns (like Year, Month, etc.) as needed.
This approach ensures your calendar always aligns with the available data in your Fact Sales table, dynamically adjusting to include dates up to the current maximum.
To dynamically filter your data up to the current date in Power Query, you can build a dynamic calendar based on your Fact Sales table.
Create a Start Date query:
Reference your Fact Sales table.
Keep only the column containing the start date (e.g., OrderDate), and remove all others.
Change the column type to Date.
Remove duplicates, then extract the earliest date using the "Drill Down" feature.
Rename this query to StartDate.
Create an End Date query:
Reference your Fact Sales table again.
Keep only the end date column (e.g., OrderDate or InvoiceDate), and remove all others.
Convert the column type to Date.
Remove duplicates, then extract the latest date using "Drill Down".
Rename this query to EndDate.
Press Enter. This will generate a dynamic list of dates from your earliest to latest available in the fact table.
You can then transform this list into a proper calendar table and add additional columns (like Year, Month, etc.) as needed.
This approach ensures your calendar always aligns with the available data in your Fact Sales table, dynamically adjusting to include dates up to the current maximum.
I am always filtering like this in power query. Instead of static filter, it will always filter like this.
[Date] <= DateTime.LocalNow())
if there is no datetime and it is only date then you just need to wrap it with Date.From
[Date] <= Date.From(DateTime.UtcNow())