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
| Argument | What to give it |
|---|---|
| date | A date, like [Finish date]. Blank gives blank. |
| months | How 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 want | Use |
|---|---|
| The first day of a month | DATE: DATE(YEAR([Finish date]), MONTH([Finish date]), 1) |
| Months as rows, with the tasks in each | PERIODS with "month" |
| A date some working time later | ADDWORK |
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.
