EOMONTH

EOMONTH(date, months)

The last day of a month, some months before or after a date, such as the end of the month a task finishes in for monthly reporting. Both arguments are required: 0 is the date's own month, 1 the next, -1 the one before.

Arguments

ArgumentWhat to give it
dateA date, like [Finish date]. Blank gives blank.
monthsHow many months on, as a number: 0 for the same month, negative for earlier ones.

Examples

Formula
=EOMONTH([Finish date], 0)

The last day of the month the task finishes in.

Formula
=[Finish date] <= EOMONTH(DATADATE(), 0)

TRUE for tasks due to finish by the end of the data date's month: the work this month's report should show finished.

Formula
=[Finish date] > EOMONTH(DATADATE(), 0) AND [Finish date] <= EOMONTH(DATADATE(), 1)

TRUE for tasks that finish in the month after the data date's.

Reach for something else when

You wantUse
The first day of a monthDATE: DATE(YEAR([Finish date]), MONTH([Finish date]), 1)
Months as rows, with the tasks in eachPERIODS with "month"
A date some working time laterADDWORK

Common questions

Why does EOMONTH(…, -1) + 1 not give the first of the month?

A number added to a date is working time of the task's calendar, not a calendar day. EOMONTH gives the start of the month's last day, so one working day from it can end on that same day. Build the first of the month with DATE instead.