Forum Discussion

sabeensp's avatar
sabeensp
Icon for Helper IV rankHelper IV
7 years ago
Solved

Week of the Month (Calculated Column)

Hello,

 

I have a Date Dimention table, in which I need to add calculated column (Week_Of) shown below in the image. I tried several IF Then else, but not beign able to do it so far. Can you please help?

  • Anonymous's avatar
    Anonymous
    7 years ago

    Oops my mistake, I misread.

     

    WeekStarting = DimDate[Date] - WEEKDAY(DimDate[Date]) + 1
  • Anonymous's avatar
    Anonymous
    7 years ago

    That's an easy enough change. WEEKDAY starts on Sunday by default, but you can change it to start on either Saturday or Monday by changing the second argument.

     

    WeekStarting = DimDate[Date] - WEEKDAY(DimDate[Date], 2) + 1

    Check out the documentation of WEEKDAY here.

7 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    If you were creating this in the query editor it would be easy. There is a Date.WeekofMonth formula. So I'm going to assume you're writing this in DAX. The easiest way I can think of is to use the WEEKNUM formula, which returns the week number in the year. Subtract the WEEKNUM of the first week of the month from the weeknum of the week you're on, and that gives you the week of the month. Don't use the date of the first of the month though, because you'll mess up on weeks that start at the end of the previous month. Use the date of the last day of the week to find the first weeknum of the month.

     

    WeekOfMonth = VAR weekending = DimDate[Date] - WEEKDAY(DimDate[Date]) + 7
    RETURN WEEKNUM(weekending) - WEEKNUM(DATE(YEAR(weekending), MONTH(weekending), 1)) + 1
    • sabeensp's avatar
      sabeensp
      Icon for Helper IV rankHelper IV

      AnonymousThanks, Yes, I'm doing that in DAX.

       

      Your solution gives me the number of week, which I already have in column Day_Wk_Num.
      What I'm looking for is what I have in column "Week_Of", which is basically the date of each week begining date, repeating for each day of that week.

       

      • Anonymous's avatar
        Anonymous
        Not applicable

        Oops my mistake, I misread.

         

        WeekStarting = DimDate[Date] - WEEKDAY(DimDate[Date]) + 1