Работа с датами в Microsoft Excel — одна из самых востребованных задач при анализе данных, планировании проектов или ведении финансовой отчётности. Часто требуется сдвинуть дату на определённый период: квартал, год или, как в нашем случае, на полгода вперёд. На первый взгляд задача простая, но у неё есть нюансы: учёт високосных годов, корректное отображение результата и совместимость с другими формулами.
В этой статье мы разберём 5 проверенных способов, как прибавить 6 месяцев к дате в Excel — от элементарных функций до продвинутых приёмов с учётом рабочих дней. Вы узнаете, какой метод выбрать для вашей задачи, как избежать ошибок с форматом ячеек и почему иногда результат получается неожиданным. А в конце — бонус: как автоматизировать процесс для тысяч строк данных.
Почему нельзя просто прибавить 180 дней?
Казалось бы, раз в полугодии примерно 180 дней, можно просто сложить дату с этим числом. Но такой подход некорректен по трём причинам:
- 📅 Разная длительность месяцев: февраль может иметь 28 или 29 дней, апрель — 30, а май — 31. Прибавление фиксированного числа дней даст неточный результат.
- 🔄 Високосные годы: 29 февраля 2026 года + 180 дней = 27 августа, а не конец июля, как могло бы показаться.
- 📊 Несоответствие бизнес-логике: если вы рассчитываете сроки контрактов или графики платежей, важно прибавлять именно календарные месяцы, а не дни.
Например, если к 15.01.2026 прибавить 180 дней, получим 13.07.2026. А правильный результат (через 6 месяцев) — 15.07.2026. Разница в 2 дня может критично повлиять на расчёты.
Способ 1: Функция ДАТАМЕС — самый надёжный метод
Функция =ДАТАМЕС() (англ. EDATE) специально создана для добавления месяцев к дате. Её синтаксис:
=ДАТАМЕС(нач_дата; число_месяцев)
Где:
нач_дата— ячейка с исходной датой или дата в формате"ДД.ММ.ГГГГ".число_месяцев— количество месяцев для добавления (в нашем случае6).
Пример:
Если в ячейке A1 указана дата 10.05.2026, формула вернёт 10.11.2026.
| Исходная дата (A1) | Формула | Результат |
|---|---|---|
| 15.02.2026 | =ДАТАМЕС(A1;6) |
15.08.2026 |
| 31.12.2023 | =ДАТАМЕС(A1;6) |
30.06.2026 |
| 29.02.2026 | =ДАТАМЕС(A1;6) |
29.08.2026 (корректно учитывает високосный год) |
✅ Плюсы метода:
- 🔹 Автоматически корректирует даты (например,
31.01 + 6 мес. = 31.07, а не30.07). - 🔹 Работает с отрицательными значениями (можно вычесть полгода).
- 🔹 Поддерживается во всех версиях Excel с 2007 года.
Способ 2: Комбинация функций ГОД, МЕСЯЦ и ДЕНЬ
Если ДАТАМЕС по какой-то причине недоступна, можно воспользоваться универсальной формулой:
=ДАТА(ГОД(A1); МЕСЯЦ(A1)+6; ДЕНЬ(A1))
Эта формула:
- Извлекает год, месяц и день из исходной даты.
- Прибавляет 6 к номеру месяца.
- Собирает новую дату с учётом возможного перехода на следующий год (например,
01.11.2026 + 6 мес. = 01.05.2026).
Важно: Если сумма месяцев превышает 12, Excel автоматически переносит излишек на следующий год. Например:
15.10.2026 + 6 мес.→15.04.2026(10 + 6 = 16 → 16 - 12 = 4 месяц следующего года).
Исходная дата в формате ДД.ММ.ГГГГ|Ячейка не содержит текст или ошибки|Формат результата — "Дата" (не "Общий")|Проверено на крайних случаях (31.12, 29.02)
-->
Способ 3: Прибавление дней с учётом средней длины месяца
Этот метод не рекомендуется для точных расчётов, но может пригодиться для приблизительных оценок. Средняя длина месяца — ~30.44 дня (365 дней / 12 месяцев). Тогда полгода ≈ 182.6 дней. Формула:
=A1+183
⚠️ Внимание:
Такой подход даёт погрешность до 2 дней в зависимости от месяца. Например:
31.01.2026 + 183→01.08.2026(правильно:31.07.2026).28.02.2026 + 183→30.08.2026(правильно:28.08.2026).Используйте только для ориентировочных расчётов!
Способ 4: Использование функции РАБДЕНЬ для рабочих дней
Если вам нужно прибавить полгода рабочих дней (исключая выходные и праздники), используйте функцию =РАБДЕНЬ() (англ. WORKDAY). Синтаксис:
=РАБДЕНЬ(нач_дата; дни; [праздники])
Сначала рассчитайте количество рабочих дней в полугодии. В среднем это ~130 дней (26 недель × 5 рабочих дней). Формула:
=РАБДЕНЬ(A1; 130)
Для точности укажите диапазон с праздничными датами (например, D1:D10):
=РАБДЕНЬ(A1; 130; D1:D10)
Создайте таблицу с календарём на 6 месяцев вперёд и используйте функцию где Как рассчитать точное число рабочих дней в полугодии?
=ЧИСТРАБДНИ() (англ. NETWORKDAYS):=ЧИСТРАБДНИ(A1; ДАТАМЕС(A1;6); D1:D10)D1:D10 — диапазон с праздничными датами.
Способ 5: Power Query для массовой обработки
Если вам нужно прибавить полгода к тысячам дат, ручной ввод формул неэффективен. В этом случае поможет инструмент Power Query (доступен в Excel 2016+ и Office 365):
- Выделите исходные данные →
Данные → Из таблицы/диапазона. - В редакторе Power Query выберите столбец с датой →
Добавить столбец → Пользовательский. - Введите формулу:
= Date.AddMonths([ВашСтолбец]; 6) - Нажмите
Закрыть и загрузить.
✅ Преимущества:
- 🔹 Обрабатывает миллионы строк без тормозов.
- 🔹 Сохраняет связь с исходными данными (обновляется автоматически).
- 🔹 Можно добавить дополнительные преобразования (например, изменить формат даты).
Типичные ошибки и как их избежать
Даже опытные пользователи Excel сталкиваются с проблемами при работе с датами. Вот самые распространённые:
- Неверный формат ячейки:
⚠️ Внимание: Если после ввода формулы результат отображается как число (например,
45678), измените формат ячейки на"Дата"черезГлавная → Формат → Формат ячеек. - Текст вместо даты:
Если в ячейке текст (например,
"15 мая"), Excel не распознает его как дату. Используйте=ДАТАЗНАЧ()для преобразования:=ДАТАМЕС(ДАТАЗНАЧ(A1); 6) - Ошибка #ЧИСЛО!:
Возникает, если результат выходит за пределы поддерживаемых дат (
01.01.1900—31.12.9999). Проверьте исходные данные на корректность.
FAQ: Ответы на частые вопросы
Можно ли прибавить полгода к дате без формул?
Да, но это неудобно:
- Выделите ячейку с датой.
- Нажмите
Ctrl + ;(вставится текущая дата). - Вручную измените месяц на +6.
Почему функция ДАТАМЕС возвращает #ИМЯ?
Ошибка #ИМЯ! означает, что:
- 🔹 Функция введена с опечаткой (проверьте регистр:
ДАТАМЕС, а неДатамес). - 🔹 Используется нерусская версия Excel (в английской версии функция называется
EDATE). - 🔹 Отсутствует надстройка "Пакет анализа" (установите её через параметры Excel).
Как прибавить полгода к дате в Google Таблицах?
В Google Sheets используйте ту же функцию =EDATE(), но с английским синтаксисом:
=EDATE(A1; 6)
Альтернатива — =DATE(YEAR(A1); MONTH(A1)+6; DAY(A1)).
Можно ли прибавить к дате "полгода минус 1 день"?
Да, комбинируйте функции:
=ДАТАМЕС(A1; 6) - 1
Или для рабочих дней:
=РАБДЕНЬ(ДАТАМЕС(A1;6); -1)
Как сделать так, чтобы результат всегда был последним днём месяца?
Используйте функцию =КОНМЕСЯЦА() (англ. EOMONTH):
=КОНМЕСЯЦА(A1; 6)
Например, 15.01.2026 → 31.07.2026.