ДАТАМЕС — перемещаемся по месяцам, сохраняя число
Нужно узнать, какая дата будет ровно через три месяца? Или какой была дата полгода назад? Казалось бы, можно просто прибавить 90 дней — но тогда число в месяце «уплывёт». Функция ДАТАМЕС (в английском Excel — EDATE) смещает дату ровно на указанное количество месяцев, сохраняя день месяца.
Синтаксис
=ДАТАМЕС(нач_дата; число_месяцев)
- нач_дата — исходная дата.
- число_месяцев — на сколько месяцев сдвинуть: положительное число — вперёд, отрицательное — назад.
Примеры
| Формула | Результат | Пояснение |
|---|---|---|
=ДАТАМЕС("10.12.2025"; 1) |
10.01.2026 | +1 месяц: то же число, следующий месяц |
=ДАТАМЕС("10.12.2025"; -2) |
10.10.2025 | −2 месяца: октябрь того же года |
=ДАТАМЕС("10.12.2025"; 6) |
10.06.2026 | +6 месяцев — полгода вперёд |
Граничный случай: когда числа не совпадают
Что будет, если в целевом месяце нет такого числа? Например, 31 января + 1 месяц = ? В феврале максимум 28 (или 29) дней. Excel не выдаёт ошибку — он берёт последний день целевого месяца:
| Формула | Результат | Пояснение |
|---|---|---|
=ДАТАМЕС("31.01.2025"; 1) |
28.02.2025 | 31-го в феврале нет — берётся последний день: 28-е |
=ДАТАМЕС("30.11.2025"; 1) |
31.12.2025 | 30-е в декабре есть, плюс ещё 31-е — Excel берёт точное смещение |
Чем ДАТАМЕС отличается от КОНМЕСЯЦА
| Функция | Что возвращает | Типичный сценарий |
|---|---|---|
| ДАТАМЕС | Ту же дату через N месяцев | Платёж 15-го каждого месяца |
| КОНМЕСЯЦА | Последний день месяца через N месяцев | Платёж в последний день каждого месяца |
Практические сценарии
График ежемесячных платежей. Первый платёж 15 января, остальные — каждые 30 дней по числу. Протяните формулу вниз:
=ДАТАМЕС($A$1; СТРОКА()-1)
Срок действия договора. Договор заключён на 12 месяцев от даты подписания:
=ДАТАМЕС(A2; 12)
Скользящее сравнение. Показатели текущего и предыдущего месяца — чтобы автоматически тянуть данные за тот же период год назад:
=ДАТАМЕС(СЕГОДНЯ(); -12)