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

Shape the future of the Fabric Community! Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions. Take survey.

Reply
Rebekahjhanson
New Member

Datediff Months: start date cannot be greater than the end date

Hi, I've thoroughly reviewed the other posts on this topic and none of them have a solution that works for my situation.  I need to calculate the months difference between two dates, and in some cases, the start date is greater than the end date.  I cannot just subtract the dates because I need the Months, not the Days.  I've tried to modify the following solutions from previous posts but I get the same error each time:

 

1) 

DateDiffMeasure :=
IF (
    [StartDateField] > [EndDateField],
    0 - DATEDIFF ( [EndDateField], [StartDateField], Month ),
    DATEDIFF ( [StartDateField], [EndDateField], Month )
)

2)

Days =
SWITCH (
    TRUE (),
    [StartDateField] > [EndDateField], -1 * DATEDIFF ( [EndDateField], [StartDateField], Month ),
    [EndDateField] > 'Table'[Target], DATEDIFF ( [StartDateField], [EndDateField], Month ),
    0
)

 

I get the same Datediff error (start date cannot be greater than the end date) regardless of what option I try from previous posts on this topic. 

 

1 REPLY 1
v-haibl-msft
Microsoft Employee
Microsoft Employee

@Rebekahjhanson

 

I tried your DAX formula in Feb 2017 version of Power BI Desktop and did not get the Datediff error as below. Could you please provide your PBIX file to me so that I can have a check on it?

 

Datediff Months start date cannot be greater than the end date_1.jpg 

 

Best Regards,

Herbert

Helpful resources

Announcements
November Carousel

Fabric Community Update - November 2024

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

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.