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

July 7 - July 17 | Round 2 of the Power BI Dataviz World Championships. Don't miss your chance! Learn more

Reply
amlopez45
Frequent Visitor

Incorrect output for IF function

Hi Everyone, 

 

I am not sure what is going on with the IF function but it is not working as I would expected to. I want to get the number of days between two dates if a certain condition is met. If the condition is not met I want it get me the number of days that have passed. 

 

This is my current formula. 

DateDiff = IF('Table'[Status] = "Closed", DATEDIFF('Table'[Return Date].[Date], 'Table' [Shipping Date].[Date], DAY), DATEDIFF('Table'[Return Date].[Date], TODAY(), DAY))
 
For example, when I add the DateDiff column that contains the formula above it outputs 4 for every row. 
CustomerStatusReturn DateShipping DateDateDiff
AClosed1/28/20192/1/20194
BActive2/4/2019 4
CActive  4
DActive2/4/2019 4

 

How do I get it to output the correct value?

 

Note: When I take out the IF function and seperate the DATEDIFF functions the output is correct. 

1 ACCEPTED SOLUTION
Anonymous
Not applicable

HI @amlopez45,

 

Can you please share pbix file for test? Your formula works well on my side.

 

Regards,
Xiaoxin Sheng

View solution in original post

6 REPLIES 6
Anonymous
Not applicable

HI @amlopez45,

 

Can you please share pbix file for test? Your formula works well on my side.

 

Regards,
Xiaoxin Sheng

Hi @Anonymous,

 

The formula is working well now. I tried Collins method and it seemed to do the job. Not really sure what happened. Thank you for offering to help. Smiley Happy

amlopez45
Frequent Visitor

Hi Everyone, 

 

I am not sure what is going on with the IF function but it is not working as I would expected to. I want to get the number of days between two dates if a certain condition is met. If the condition is not met I want it get me the number of days that have passed. 

 

This is my current formula. 

DateDiff = IF('Table'[Status] = "Closed", DATEDIFF('Table'[Return Date].[Date], 'Table' [Shipping Date].[Date], DAY), DATEDIFF('Table'[Return Date].[Date], TODAY(), DAY))
 
For example, when I add the DateDiff column that contains the formula above it outputs 4 for every row. 
CustomerStatusReturn DateShipping DateDateDiff
AClosed1/28/20192/1/20194
BActive2/4/2019 4
CActive  4
DActive2/4/2019 4

 

How do I get it to output the correct value?

 

Note: When I take out the IF function and seperate the DATEDIFF functions the output is correct. 

Anonymous
Not applicable

hello @amlopez45

 

first things first, try changing your data format (top of modeling tab) to date for your calculated column and see if that fixes your issue

 

here is a picture of what I did.

dateeeeeeeeeeeee.PNG

best regards,

Collin

Hello @Anonymous,

 

Thank you for the suggestion, the formula is working well now. Smiley Happy

Anonymous
Not applicable

@amlopez45

 

Great to hear, be sure to mark the post as the solution for anyone else that comes along. 

 

best Regards,

Collin

 

 

Helpful resources

Announcements
FabCon and SQLCon Barcelona 2026

FabCon & SQLCon – Barcelona 2026

Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.

60 days of Data Days Carousel

Data Days 2026

Join Fabric Data Days 2026: 60 days of free live/on-demand sessions, challenges, study groups, and certification opportunities.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.