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

Compete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.

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
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.