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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
rocky_puff
Frequent Visitor

Compare Dates in IF, and run DATEDIFF in formula

Hi, im a new user in Power BI. Currently my task is to calculate the time difference between two dates, A and B, where supposed Date B is later than Date A. Since there are some technical error where Date A is later than Date B, it produces a negative result. Thus, now I need to do an IF to check if the Date A is later than Date B, return null, else run the calculation. But power BI is giving me an error. 

 

Unless, I didn't run the calculation, and I return string type, then it would work fine. And please let me know if I declare null correctly.

 

rocky_puff_0-1616547982709.png

 

Can anybody give some tips on the solution?

1 ACCEPTED SOLUTION
Anonymous
Not applicable

IF you are creating the measure then use following DAX :

Measure =
VAR ABC = SELECTEDVALUE('Table'[Start])
VAR BC = SELECTEDVALUE('Table'[End])
RETURNIF(ABC<BC,DATEDIFF(ABC,BC,DAY),BLANK())
 
else in a calculated column :
Column = IF('Table'[Start]<'Table'[End],DATEDIFF('Table'[Start],'Table'[End],DAY),BLANK())
 

View solution in original post

5 REPLIES 5
Anonymous
Not applicable

IF you are creating the measure then use following DAX :

Measure =
VAR ABC = SELECTEDVALUE('Table'[Start])
VAR BC = SELECTEDVALUE('Table'[End])
RETURNIF(ABC<BC,DATEDIFF(ABC,BC,DAY),BLANK())
 
else in a calculated column :
Column = IF('Table'[Start]<'Table'[End],DATEDIFF('Table'[Start],'Table'[End],DAY),BLANK())
 

Yes, I've tried like this before. But I had wrongly set the sequence and I didn't set the variable. Maybe that's why it run into error. But my solution is the same as this one, so I will mark this as a solution. Thanks!

HotChilli
Super User
Super User

I haven't looked at the logic of the calculation. I'm just trying to get you past the error.  Replace "null" with blank()

HotChilli
Super User
Super User

You have to return the same datatype from all paths of the 'if' statement.  At the moment a string or a number are being returned.  Try blank()

But how to show the result of DATEDIFF calculation if I put blank() ? 

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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

Top Solution Authors