Разбор даты на составляющие в Excel

Иван Корнев·23.05.2024·4 мин

Чтобы получить год, день недели или номер недели из даты в Excel, используйте встроенные функции: =ГОД(ячейка) вернет четырехзначный год, =ДЕНЬНЕД(ячейка; тип) покажет номер дня (от 1 до 7), а =НОМЕРНЕДЕЛИ(ячейка; 21) рассчитает номер недели по международному стандарту ISO. Для вывода названия дня недели текстом (например, «Понедельник») удобнее всего применять функцию =ТЕКСТ(ячейка; "ДДДД"). Эти инструменты работают во всех современных версиях табличного процессора и позволяют мгновенно структурировать временные данные для отчетов.

Извлечение года из даты

Самый простой элемент для получения — это год. Функция игнорирует день и месяц, возвращая только четырехзначное число.

Синтаксис: =ГОД(номер_серии)

Где номер_серии — это ссылка на ячейку с датой (например, A1) или сама дата в кавычках.

Пример использования: Если в ячейке A1 содержится дата 15.03.2026:

  • Формула: =ГОД(A1)
  • Результат: 2026

Функция работает даже если ячейка отформатирована как текст, при условии, что Excel распознает содержимое как дату. Если возникает ошибка #ЗНАЧ!, предварительно преобразуйте текст в дату через вкладку «Данные» -> «Текст по столбцам».

Определение дня недели

В Excel есть два основных способа работы с днями недели: получение числового кода (для сортировки и условий) и получение текстового названия (для красивых отчетов).

Числовой код: функция ДЕНЬНЕД

Функция =ДЕНЬНЕД(дата; [тип]) возвращает число от 1 до 7. Критически важно правильно выбрать второй аргумент (тип), чтобы нумерация соответствовала вашим привычкам (например, чтобы понедельник был первым днем).

ТипПервый день неделиВозвращаемые значенияФормула пример
1 (или пропущен)Воскресенье1 (Вс) – 7 (Сб)=ДЕНЬНЕД(A1)
2Понедельник1 (Пн) – 7 (Вс)=ДЕНЬНЕД(A1; 2)
3Понедельник0 (Пн) – 6 (Вс)=ДЕНЬНЕД(A1; 3)

Для российских реалий чаще всего используется тип 2, где неделя начинается с понедельника.

Текстовое название: функция ТЕКСТ

Если вам нужно видеть слово «Вторник» или сокращение «Вт», используйте форматирование через функцию ТЕКСТ. Это надежнее, чем создание сложных формул с условиями ЕСЛИ.

  • Полное название: =ТЕКСТ(A1; "ДДДД") → результат: среда
  • Сокращенное название: =ТЕКСТ(A1; "ДДД") → результат: ср
  • С заглавной буквы: =ПРОПНАЧ(ТЕКСТ(A1; "ДДДД")) → результат: Среда

Функция ТЕКСТ возвращает именно текст, а не дату. Полученное значение нельзя использовать в дальнейших математических вычислениях с датами без обратного преобразования.

Расчет номера недели

Определение номера недели может варьироваться в зависимости от стандарта. В бизнес-среде наиболее распространен стандарт ISO 8601, где неделя начинается в понедельник, а первая неделя года — та, в которой находится первый четверг.

Функция НОМЕРНЕДЕЛИ

Базовая формула: =НОМЕРНЕДЕЛИ(дата; [возвращаемый_тип]).

  • Тип 21 (ISO 8601): Неделя начинается в понедельник. Это рекомендуемый стандарт для международной отчетности.
    • Формула: =НОМЕРНЕДЕЛИ(A1; 21)
  • Тип 1 (США): Неделя начинается в воскресенье. Первая неделя содержит 1 января.
    • Формула: =НОМЕРНЕДЕЛИ(A1; 1)

В новых версиях Excel (365, 2021+) появилась отдельная функция =ИСОНОМЕРНЕДЕЛИ(дата), которая автоматически применяет стандарт ISO без необходимости указывать тип.

Комплексный пример и обработка ошибок

Часто требуется вывести всю информацию одной строкой или защитить формулу от некорректных данных.

Сборка строки отчета: Объедините год, день недели и номер недели в одну ячейку: =ГОД(A1) & " г., " & ТЕКСТ(A1;"ДДДД") & ", неделя " & НОМЕРНЕДЕЛИ(A1;21) Результат: 2026 г., среда, неделя 11

Защита от ошибок: Если в исходной ячейке может быть пустое значение или текст, оберните формулу в ЕСЛИОШИБКА: =ЕСЛИОШИБКА(НОМЕРНЕДЕЛИ(A1;21); "") Это предотвратит появление страшных кодов ошибок (#ЗНАЧ!, #ЧИСЛО!) в ваших сводных таблицах.

Частые ошибки

  • Неверный старт недели: Вы используете =ДЕНЬНЕД(A1) без второго аргумента, поэтому воскресенье считается первым днем (1), а понедельник — вторым (2). Для РФ всегда добавляйте ;2.
  • Разница в годах для недель: По стандарту ISO дата 01.01.2024 (понедельник) относится к 1-й неделе 2024 года, но 31.12.2024 (вторник) может относиться к 1-й неделе 2025 года. Не путайте год даты и год недели.
  • Текст вместо даты: Формулы возвращают ошибку, если дата введена как текст (например, "20.05.24" с точками в неверном порядке для системных настроек). Проверьте, выравнивается ли дата в ячейке по правому краю (признак числа/даты) или по левому (текст).

FAQ

Как сделать так, чтобы выходные дни выделялись цветом? Используйте условное форматирование. Создайте правило с формулой: =ДЕНЬНЕД(A1;2)>5. Эта формула вернет ИСТИНА для субботы (6) и воскресенья (7).

Почему функция НОМЕРНЕДЕЛИ выдает 53 или 54 неделю? Это нормально для конца года. В високосные годы или при специфическом расположении дней декабря последняя неделя может иметь высокий номер согласно выбранному типу исчисления.

Можно ли получить номер квартала? Прямой функции нет, но можно вычислить: =ЦЕЛОЕ((МЕСЯЦ(A1)-1)/3)+1. Это разделит 12 месяцев на 4 равные части.