Get last working day in month

Generic formula 

=WORKDAY(EOMONTH(date)+1,-1)

Related formulas 

Get last day of month

Get last weekday in month

Get nth day of week in month

Explanation

To get the last working day in a month, you can use the WORKDAY function together with the EOMONTH function. In the example, the formula in C4 is:

=WORKDAY(EOMONTH(B4,0)+1,-1)

How this formula works

Working from the inside out, the EOMONTH function gets the last day of month of any date. To this result, we add 1, which results in the first day of the next month.

This date goes into WORKDAY function as the "start date", along with -1 for "days". The WORKDAY function automatically steps back 1 day, taking into account any weekends. The result is the last workday of the month.

Holidays

To get the last working day of the month, taking into account holidays, just add the range that contains holiday dates to the formula like this:

=WORKDAY(EOMONTH(B4,0)+1,-1,holidays)

Custom weekends

The WEEKDAY function assumes weekends are Saturday and Sunday. If you need to customize weekend days, you can use the WEEKDAY.INTL function.

Get last working day in month

Generic formula 

=WORKDAY(EOMONTH(date)+1,-1)

Related formulas 

Get last day of month

Get last weekday in month

Get nth day of week in month

Explanation

To get the last working day in a month, you can use the WORKDAY function together with the EOMONTH function. In the example, the formula in C4 is:

=WORKDAY(EOMONTH(B4,0)+1,-1)

How this formula works

Working from the inside out, the EOMONTH function gets the last day of month of any date. To this result, we add 1, which results in the first day of the next month.

This date goes into WORKDAY function as the "start date", along with -1 for "days". The WORKDAY function automatically steps back 1 day, taking into account any weekends. The result is the last workday of the month.

Holidays

To get the last working day of the month, taking into account holidays, just add the range that contains holiday dates to the formula like this:

=WORKDAY(EOMONTH(B4,0)+1,-1,holidays)

Custom weekends

The WEEKDAY function assumes weekends are Saturday and Sunday. If you need to customize weekend days, you can use the WEEKDAY.INTL function.