Forum Discussion

john_hqi's avatar
john_hqi
New Member
9 years ago
Solved

Determine if date is between 2 dates

I have a table with an End Date for a record. I need to determine if this end date is between a start date and end date for a custom 5 year contract quarter. I was thinking of just doing this in DAX as a calculated column and nesting an if statement to retrun the correct value. Is there a more "correct" way to do this? I have 12 quarters 9-20 that I have to look for.

 

For example:

IF([EndDate] >= DATE(2017,5,1) && [EndDate] <= DATE(2017,7,31), "Q12", 

     IF([EndDate] >= DATE(2017,8,1) && [EndDate] <= DATE(2017,10,31), "Q13", 

          IF([EndDate] >= DATE(2017,11,1) && [EndDate] <= DATE(2018,1,31), "Q14", 

               "Not in range"))

 

  • Hi john_hqi

     

    I tested mmace1's idea. It works. Please have a try.

    1. Create a table "Quarters".

    2. Add a calculated column:

    Column =
    CALCULATE (
        VALUES ( Quarters[Value] ),
        FILTER (
            'Quarters',
            'Quarters'[Start] <= EARLIER ( 'Calendar'[Date] )
                && 'Quarters'[End] >= EARLIER ( 'Calendar'[Date] )
        )
    )

    3. If more quarters neeed, we can add to table "Quarters".

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Best Regards!

    Dale

     

15 Replies