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

Score big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount

Reply
Centaur
Helper V
Helper V

If statement Help

Hello, I am getting an error in this IF statement.  I have tried "IF" and "IIF".  Do you happen to see where I am  wrong?  I am wanting to add a custom column to tag rows that are greater than the current date - 8 days.  maybe there is a better way to do this. I do not see how I can filter my [Date] column for the criteria unless I add a helper column as below. 

 

= Table.AddColumn(#"Sorted Rows", "Filter Grtr 8 days", each IIF((NOW()-[Date])<8,"Y","N"))

 

Centaur_0-1649680798329.png

 

1 ACCEPTED SOLUTION

Hi @Centaur ,

 

I already updated my code to correct this when I spotted it.

 

Also, based on your reply to jennratten, I think you will need to add a Date.From function to truncate the datetime value of today:

if Duration.Days(Date.From(DateTime.LocalNow()) - [Date]) < 8 then "Y" else "N"

 

Pete



Now accepting Kudos! If my post helped you, why not give it a thumbs-up?

Proud to be a Datanaut!




View solution in original post

5 REPLIES 5
BA_Pete
Super User
Super User

Hi @Centaur ,

 

The correct IF statement syntax in Power Query is ' if..then..else if..else'.

I think your statement would need to be something like this:

 

if Duration.Days(DateTime.LocalNow() - [Date]) < 8 then "Y" else "N"

 

 

Pete



Now accepting Kudos! If my post helped you, why not give it a thumbs-up?

Proud to be a Datanaut!




Hi Pete,

thank you. I get an error though "2 arguments were passed...."?  

 

Centaur_0-1649683136960.png

 

Hi @Centaur ,

 

I already updated my code to correct this when I spotted it.

 

Also, based on your reply to jennratten, I think you will need to add a Date.From function to truncate the datetime value of today:

if Duration.Days(Date.From(DateTime.LocalNow()) - [Date]) < 8 then "Y" else "N"

 

Pete



Now accepting Kudos! If my post helped you, why not give it a thumbs-up?

Proud to be a Datanaut!




jennratten
Super User
Super User

Here you are (assuming your date field is actually a datetime type.  If it is not, you will need to use Date.From ( DateTime.FixedLocalNow() 😞

= Table.AddColumn(#"Sorted Rows", "Filter Grtr 8 days", each if Duration.Days ( DateTime.FixedLocalNow()-[Date] ) < 8 then "Y" else "N", type text )

 

 

Hi Jenn,

 

I also have an error:

Not sure if I have done somethng wrong on my end. I added a custom column then pasted.  

Centaur_1-1649683226793.png

 

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

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

August 2025 community update carousel

Fabric Community Update - August 2025

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

Top Solution Authors