cancel
Showing results for
Did you mean:

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Regular Visitor

## Return the 2nd Tuesday of every Month

I am trying to return the 2nd Tuesday of every month. My table has a date for everyday. How can I return this based on the that field.

1 ACCEPTED SOLUTION
Employee

Please try this as a caluculated column

```Is 2nd Tuesday =
VAR a = 'Dates'[Date]
VAR y = FILTER(
ALL(Dates[Date]),
YEAR('Dates'[Date]) = YEAR(a) &&
MONTH('Dates'[Date]) = MONTH(a) &&
DAY([Date]) > 7 &&
DAY([Date]) < 15 &&
WEEKDAY([Date],3) = 1)
RETURN MAXX(y,[Date])```

Proud to be a Datanaut!

15 REPLIES 15
Super User

Hi @tacobannas,

Create these two column:

```MonthWeekday = MONTH('Calendar'[Date]) & WEEKDAY('Calendar'[Date])

weekday_Number = WEEKDAY('Calendar'[Date])```

Then create this measure:

```2nd Tuesday =
VAR Date_Max =
MAX ( 'Calendar'[Date] )
VAR Month_week_Max =
MAX ( 'Calendar'[MonthWeekday] )
RETURN
IF (
CALCULATE (
COUNT ( 'Calendar'[MonthWeekday] ),
'Calendar'[Date] <= Date_Max,
'Calendar'[MonthWeekday] = Month_week_Max
)
= 2
&& MAX ( 'Calendar'[weekday_Number] ) = 3,
"2nd",
""
)```

Add the measure as a filter on your visuals and you should get the result you need:

Regards,

MFelix

Regards

Miguel Félix

Proud to be a Super User!

Check out my blog: Power BI em Português

Regular Visitor

Thanks, that works as a measure, but I was hoping to return the 2nd Tuesday each month as a date in a column. So for everday of the month in my calendar table I would have a corresponding column with the 2nd Tuesday date.

Employee

Please try this as a calculated column

```Is 2nd Tuesday =
VAR x =  IF(WEEKDAY([Date],1) = 3 , DAY([Date]) , 0)
RETURN IF(x > 7 && x < 15 , 1 , 0)```

Proud to be a Datanaut!

Regular Visitor

That appears to work returning true or false, however I want to return the actual date of the 2nd Tuesday.

Employee

Hi

```Is 2nd Tuesday =
VAR x =  IF(WEEKDAY([Date],1) = 3 , DAY([Date]) , 0)
RETURN IF(x > 7 && x < 15 , [Date] , blank())```

Proud to be a Datanaut!

Anonymous
Not applicable

Hi,

How to get the last tuesday of a month? I want to add a calculated coloumn in my table which should return the current month of the date of that row. But current is from Last wednesday of the previous month to last tuesday of the current month rather than just month(date).

Regular Visitor

This appears to be working, but I need that to be filled into every row value pair, not blank in the instance it is not the 2nd Tuesday.

Employee

So do you mean every row for the month will carry the date that happens to be the 2nd tuesday of each month?

Proud to be a Datanaut!

Employee

Please try this as a caluculated column

```Is 2nd Tuesday =
VAR a = 'Dates'[Date]
VAR y = FILTER(
ALL(Dates[Date]),
YEAR('Dates'[Date]) = YEAR(a) &&
MONTH('Dates'[Date]) = MONTH(a) &&
DAY([Date]) > 7 &&
DAY([Date]) < 15 &&
WEEKDAY([Date],3) = 1)
RETURN MAXX(y,[Date])```

Proud to be a Datanaut!

Community Champion

@tacobannas my Power Query solution also fits your requirements.

Specializing in Power Query Formula Language (M)
Regular Visitor

@MarcelBeug I am not sure how to convert that power query statement into the correct power bi syntax.

Community Champion

Power BI encompasses 2 languages: Power Query (M) and DAX.

If you're not comfortable with Power Query, you can use a DAX solution.

Also Power Query is correct Power BI syntax.

As I already explained, in the Query Editor you can add a custom column.

A screen shot of adding a custom column (taken from another topic, so with another formula):

Specializing in Power Query Formula Language (M)
Regular Visitor

@MarcelBeug thanks for the further clarification. My date table is not a table that shows up in query editor, so I am guessing I can't use your Power Query solution.... I created the date table by creating a new caculated column. I am probably a bit more confused as well since I am new to PowerBI 🙂

However @Phil_Seamark solution is working so I think I will just stick with that.

```2ndTuesday = VAR a = 'Date'[Date]
VAR y = FILTER(
ALL('Date'[Date]),
YEAR('Date'[Date]) = YEAR(a) &&
MONTH('Date'[Date]) = MONTH(a) &&
DAY('Date'[Date]) > 7 &&
DAY('Date'[Date]) < 15 &&
WEEKDAY('Date'[Date],3) = 1)
RETURN MAXX(y,'Date'[Date])```

Thanks everyone for the help and quick response

Community Champion

A power Query solution: add a column with formula:

`= Date.StartOfWeek(#date(Date.Year([Date]),Date.Month([Date]),14),Day.Tuesday)`

This wil take the 14th of the year/month of the date, and from that date: the start of the week, with Tuesday as the first day of the week. So that must be the 2nd Tuesday in the month.

Specializing in Power Query Formula Language (M)
Kudo Kingpin

@MarcelBeug: I found this method super helpful in getting Daylight Savings Time for a local refresh time function

Announcements

#### Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

#### Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

#### Fabric Community Update - April 2024

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

Top Solution Authors
Top Kudoed Authors