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.
Hello!
It's me again with another date conundrum.
What I want to do is filter a range of data based on its date. For example, I want to filter out anything from 1st April of the previous year. So for 2020 that would be 1st April 2019 and for 2021, this would be 1st April 2020.
I can easily do this with a fixed date, but I have struggled to make this dynamic.
I have tried the following but get an error about not passing through a date value: -
#"Filtered Rows" = Table.SelectRows(#"Changed Type", each [Date] >= Date.From(Date.AddMonths(Date.StartOfYear(DateTime.LocalNow)),-9))
In my mind, I'm asking it to filter out anything that is less than equal to the start of today's year minus 9 months. E.g. 1st April 2019.
If anyone can shed some light on this for me, I would be much obliged.
Solved! Go to Solution.
@Anonymous - Try ditching your Date.From, I don't see why you need that. Also, you need () on your .LocalNow
#"Filtered Rows" = Table.SelectRows(#"Changed Type", each [Date] >= Date.AddMonths(Date.StartOfYear(DateTime.LocalNow())),-9)
Exact error message: -
Expression.Error: The Date value must contain the Date component.
Details:
[Function]
@Anonymous - Try ditching your Date.From, I don't see why you need that. Also, you need () on your .LocalNow
#"Filtered Rows" = Table.SelectRows(#"Changed Type", each [Date] >= Date.AddMonths(Date.StartOfYear(DateTime.LocalNow())),-9)
Thanks, @Greg_Deckler - I always struggle with the date/datetime/datetimezone fields!
I've tried what you have suggested but now get: -
Expression.Error: 3 arguments were passed to a function which expects 2.
Details:
Pattern=
Arguments=[List]
Then I realised there were not enough brackets (or not in the right place) and get: -
Expression.Error: We cannot apply operator < to types DateTime and Date.
Details:
Operator=<
Left=01/10/2019 00:00:00
Right=21/08/2019
Ah I may have cracked it...
#"Filtered Rows" = Table.SelectRows(#"Added Conditional Column1", each [Date] >= Date.From(Date.AddMonths(Date.StartOfYear(DateTime.LocalNow()),-9)))
Converting datetime to date with the Date.From - then matches the "Date" format in [Date]
User | Count |
---|---|
84 | |
82 | |
66 | |
52 | |
46 |
User | Count |
---|---|
100 | |
48 | |
42 | |
39 | |
38 |