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

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes! Register now.

Reply
lguelcher
Regular Visitor

If won, then calculate difference between two dates

I'm trying to add a calculated column to calculate the number of days between two dates. However, I need to only calculate for those that meet a certain criteria. 

 

The formula I tried is: 

DiffCloseDate = if(Opportunities[Status]="won",(Opportunities[Actual Close Date]-Opportunities[Est Close Date]),"")

 

For the 'then' clause, I also tried

Datediff(Opportunities[Est Clsoe Date],Opportunities[Actual Close Date],Days)

 

 

The error I'm receiving is:

A single value for column 'Actual Close Date' in table Opportunities cannot be determined. This can happen when a measure formula refers to a column that contains many values without specifying an aggregation such as min, max, count, or sum to get a single result.

 

But, I don't want to aggregate the dates. I just want each row to perform the calculation.

 

Thanks for any help.

1 ACCEPTED SOLUTION
Greg_Deckler
Community Champion
Community Champion

Are you sure that you are using a calculated column because the error you are getting is for a measure. If you use a calculated column, your formula would generate an error regarding "variant" data because you are trying to return a number and a string at the same time. Both have to agree in terms of the data type returned. So, you could do something like this as a calculated column (not a measure)

 

DiffCloseDate = IF(Opportunities[Status]="won",Opportunities[Actual Close Date]-Opportunities[Est Close Date],-999)


Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

View solution in original post

2 REPLIES 2
Greg_Deckler
Community Champion
Community Champion

Are you sure that you are using a calculated column because the error you are getting is for a measure. If you use a calculated column, your formula would generate an error regarding "variant" data because you are trying to return a number and a string at the same time. Both have to agree in terms of the data type returned. So, you could do something like this as a calculated column (not a measure)

 

DiffCloseDate = IF(Opportunities[Status]="won",Opportunities[Actual Close Date]-Opportunities[Est Close Date],-999)


Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

@lguelcher, are you defining this column in the 'Opportunities' table?

Helpful resources

Announcements
September Power BI Update Carousel

Power BI Monthly Update - September 2025

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

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors