Как в Excel проставить дни недели по дате: от базовых формул до продвинутых методов

Работа с датами в Microsoft Excel — одна из самых востребованных задач среди пользователей. Часто требуется не просто хранить даты в таблице, а автоматически определять, на какой день недели приходится та или иная дата. Например, при составлении графиков работы, анализе продаж по дням недели или планировании мероприятий. Вручную проставлять дни недели неэффективно, особенно если речь идёт о сотнях строк. К счастью, в Excel есть несколько способов автоматизировать этот процесс — от простых формул до продвинутых инструментов вроде Power Query.

Многие пользователи ошибочно думают, что для этой задачи нужны сложные макросы или глубокие знания программирования. На самом деле даже начинающий может справиться с задачей за пару минут, если знает правильные функции. В этой статье мы разберём 5 проверенных методов: от базовых формул ТЕКСТ и ДЕНЬНЕД до динамических массивов и пользовательского форматирования. Вы узнаете, как вывести день недели на русском языке, как избежать ошибок при работе с локалями, и даже как автоматически подсвечивать выходные дни. А в конце статьи вас ждёт уникальный лайфхак для работы с большими массивами данных без формул.

———

1. Базовый способ: функция ТЕКСТ для вывода дня недели

Самый простой метод — использовать функцию ТЕКСТ. Она преобразует дату в текстовый формат, позволяя гибко настраивать отображение. Например, можно вывести полное название дня недели (понедельник), сокращённое (пн) или даже добавить месяц и год.

Формула выглядит так:

=ТЕКСТ(A1; "ДДДД")

где A1 — ячейка с датой, а "ДДДД" — формат отображения (четыре буквы "Д" дают полное название дня).

Если нужно сокращённое название (например, пн, вт), используйте:

=ТЕКСТ(A1; "ДДД")
📊 Какой формат дня недели вам нужнее?
Полное название (понедельник)
Сокращённое (пн)
День + дата (пн, 15 мая)
Другой вариант

Плюсы метода:

  • 🔹 Простота — не требует знания сложных функций.
  • 🔹 Гибкость — можно комбинировать с другими форматами (например, "ДДД, ММММ" выведет пн, май).
  • 🔹 Работает во всех версиях Excel, включая Excel Online.

⚠️ Внимание: Функция ТЕКСТ возвращает текстовое значение, а не числовое. Это означает, что такие данные нельзя использовать в вычислениях (например, для подсчёта количества понедельников). Для аналитических задач лучше комбинировать её с другими функциями.

2. Функция ДЕНЬНЕД: числовое представление дня недели

Если вам нужно не текстовое название, а числовой код дня недели (где 1 = воскресенье, 2 = понедельник и так далее), используйте функцию ДЕНЬНЕД:

=ДЕНЬНЕД(A1)

По умолчанию Excel считает первым днём недели воскресенье (как в американской традиции). Если вам нужна европейская система, где первым днём является понедельник, добавьте второй аргумент:

=ДЕНЬНЕД(A1; 2)

где 2 — код для системы, где понедельник = 1, а воскресенье = 7.

🔹 Пример: Если в ячейке A1 дата 15 мая 2026 года (среда), то:

  • =ДЕНЬНЕД(A1) вернёт 4 (воскресенье=1, понедельник=2, вторник=3, среда=4).
  • =ДЕНЬНЕД(A1; 2) вернёт 3 (понедельник=1, вторник=2, среда=3).
=ВЫБОР(ДЕНЬНЕД(A1;2); "пн"; "вт"; "ср"; "чт"; "пт"; "сб"; "вс")
-->

⚠️ Внимание: Если вы работаете с данными из внешних источников (например, выгружаете даты из или Google Sheets), проверьте, какой день недели считается первым. В некоторых системах по умолчанию может использоваться другой стандарт.

3. Пользовательский формат ячеек: день недели без формул

Мало кто знает, но в Excel можно отображать день недели прямо в ячейке с датой, не используя дополнительные столбцы или формулы. Для этого достаточно применить пользовательский формат:

📌 Инструкция:

  1. Выделите ячейку или диапазон с датами.
  2. Нажмите Ctrl + 1 (или правой кнопкой → Формат ячеек).
  3. Перейдите на вкладку Число → Все форматы.
  4. В поле Тип введите один из кодов:
    • ДДДД — полное название дня (понедельник).
    • ДДД — сокращённое (пн).
    • ДДД, ДД.MM.ГГГГ — день недели + дата (пн, 15.05.2026).

🔹 Преимущества метода:

  • 🔸 Не требует дополнительных столбцов — день недели отображается прямо в ячейке с датой.
  • 🔸 Данные остаются датами (а не текстом), их можно использовать в формулах и сортировке.
  • 🔸 Легко изменять формат без потери данных.

⚠️ Внимание: Пользовательский формат не меняет само значение ячейки, а только его отображение. Если скопировать такую ячейку в другой файл или программу, может передаться только исходная дата без дня недели.

Как вернуть стандартный формат даты?

Чтобы убрать пользовательский формат, выделите ячейки, нажмите Ctrl + 1, выберите категорию Дата и укажите нужный формат (например, 14.03.2001).

4. Динамические массивы: автоматическое заполнение столбца днями недели

В Excel 365 и Excel 2021 появилась поддержка динамических массивов, которые позволяют автоматически "проливать" формулу на весь столбец. Это удобно, если у вас большая таблица, и вы не хотите вручную протягивать формулу или копировать её на тысячи строк.

🔹 Пример: Допустим, у вас в столбце A даты с A2 по A1000. Введите в ячейку B2 формулу:

=ТЕКСТ(A2:A1000; "ДДДД")

и нажмите Enter. Excel автоматически заполнит все ячейки в столбце B названиями дней недели.

📊 Сравнение с классическим методом:

Метод Преимущества Недостатки
Классическая формула (протягивание) Работает во всех версиях Excel Нужно вручную копировать формулу или протягивать маркер заполнения
Динамический массив Автоматическое заполнение всего диапазона, экономия времени Требует Excel 365/2021, не работает в старых версиях
Пользовательский формат Не требует дополнительных столбцов День недели не отделяется от даты, нельзя использовать в вычислениях

💡 Лайфхак: Если вам нужно не только отобразить день недели, но и подсветить выходные, комбинируйте динамические массивы с условным форматированием. Например, создайте правило для ячеек, где ДЕНЬНЕД(A2;2)>5 (т.е. суббота или воскресенье), и задайте красный цвет текста.

5. Power Query: обработка больших массивов данных

Если вы работаете с огромными таблицами (десятки тысяч строк) или часто импортируете данные из внешних источников (CSV, SQL, JSON), то оптимальным решением станет Power Query. Этот инструмент позволяет автоматизировать преобразование данных, включая добавление столбца с днями недели.

📌 Пошаговая инструкция:

  1. Выделите вашу таблицу и перейдите на вкладку Данные → Из таблицы/диапазона (или Получить данные → Из файла, если импортируете).
  2. В открывшемся редакторе Power Query выделите столбец с датами.
  3. Перейдите на вкладку Добавить столбец → Дата → День → Название дня.
  4. Выберите нужный формат (полное или сокращённое название).
  5. Нажмите Закрыть и загрузить, чтобы вернуть данные в Excel.

Преимущества Power Query:

  • 🔹 Обрабатывает миллионы строк без замедления.
  • 🔹 Автоматически обновляет данные при изменении источника.
  • 🔹 Позволяет создавать сложные цепочки преобразований (например, фильтровать даты по дням недели прямо в запросе).

⚠️ Внимание: После загрузки данных через Power Query столбец с днями недели будет статичным. Если исходные даты изменятся, нужно обновить запрос вручную (правой кнопкой по таблице → Обновить).

Добавить столбец с днём недели|Проверить формат даты (должен быть Date, а не Text)|Удалить дубликаты (если нужно)|Фильтровать выходные дни (если требуется)|Загрузить данные обратно в Excel-->

6. Продвинутые приёмы: условное форматирование и сводные таблицы

Вывести день недели — это только половина дела. Часто требуется ещё и анализировать данные по дням. Например, посчитать, сколько заказов пришлось на понедельники, или выделить цветом все выходные. Для этого подойдут сводные таблицы и условное форматирование.

🔹 Пример 1: Подсчёт по дням недели в сводной таблице

  1. Выделите вашу таблицу с данными (включая столбец с днями недели).
  2. Перейдите на вкладку Вставка → Сводная таблица.
  3. В поле Строки перетащите столбец с днями недели.
  4. В поле Значения добавьте данные, которые нужно просуммировать (например, количество продаж).

🔹 Пример 2: Выделение выходных цветом

  1. Выделите столбец с датами.
  2. Перейдите на вкладку Главная → Условное форматирование → Создать правило.
  3. Выберите Использовать формулу для определения форматируемых ячеек.
  4. Введите формулу:
    =ИЛИ(ДЕНЬНЕД(A1;2)=6; ДЕНЬНЕД(A1;2)=7)

    где A1 — первая ячейка диапазона, 6 — суббота, 7 — воскресенье.

  5. Задайте формат (например, красный текст или жёлтый фон) и нажмите ОК.

📌 Полезный совет: Если вам нужно анализировать данные по рабочим и выходным дням, создайте дополнительный столбец с формулой:

=ЕСЛИ(ИЛИ(ДЕНЬНЕД(A1;2)=6; ДЕНЬНЕД(A1;2)=7); "Выходной"; "Рабочий")

Этот столбец можно использовать в фильтрах или сводных таблицах.

Частые ошибки и как их избежать

Даже в такой простой задаче, как вывод дня недели, пользователи часто сталкиваются с проблемами. Вот самые распространённые ошибки и способы их решения:

🔸 Ошибка 1: Функция возвращает неверный день недели

  • 🔹 Причина: В настройках Excel или системы установлен неверный первый день недели (воскресенье вместо понедельника).
  • 🔹 Решение: Используйте второй аргумент в ДЕНЬНЕД:
    =ДЕНЬНЕД(A1; 2)

    или измените настройки региона в Файл → Параметры → Язык → Региональные параметры.

🔸 Ошибка 2: Дата отображается как число (например, 44321 вместо 15.05.2026)

  • 🔹 Причина: Ячейка имеет общий формат, а не формат Дата.
  • 🔹 Решение: Выделите ячейку, нажмите Ctrl + 1, выберите формат Дата.

🔸 Ошибка 3: Функция ТЕКСТ возвращает английские названия дней (Monday вместо понедельник)

  • 🔹 Причина: Настройки языка в Excel или системе установлены на английский.
  • 🔹 Решение:
    1. Проверьте региональные настройки в Панель управления Windows → Часы и регион → Регион.
    2. Или явно укажите локаль в формуле:
      =ТЕКСТ(A1; "[$-419]ДДДД")

      где 419 — код локали для русского языка.

  • ⚠️ Внимание: Если вы работаете с датами, импортированными из Google Sheets или баз данных, они могут храниться как текст. Перед использованием функций ДЕНЬНЕД или ТЕКСТ преобразуйте их в настоящие даты с помощью ДАТАЗНАЧ:

    =ДАТАЗНАЧ(A1)

    ———

    FAQ: Ответы на частые вопросы

    Как вывести день недели на украинском или другом языке?

    Используйте код локали в функции ТЕКСТ. Например, для украинского языка:

    =ТЕКСТ(A1; "[$-422]ДДДД")

    где 422 — код локали для украинского. Полный список кодов можно найти в документации Microsoft.

    Можно ли автоматически обновлять дни недели при изменении даты?

    Да, если вы используете формулы (ТЕКСТ, ДЕНЬНЕД) или Power Query. Пользовательский формат ячеек обновляется автоматически, но не подходит для аналитических задач.

    Как посчитать количество конкретных дней недели (например, всех понедельников) в диапазоне?

    Используйте функцию СЧЁТЕСЛИ с критерием:

    =СЧЁТЕСЛИ(Диапазон_с_днями_недели; "понедельник")

    или комбинацию СУММПРОИЗВ с ДЕНЬНЕД:

    =СУММПРОИЗВ(--(ДЕНЬНЕД(Диапазон_дат;2)=1))

    где 1 — код понедельника.

    Почему в сводной таблице дни недели сортируются не по порядку (пн, ср, вт вместо пн, вт, ср)?

    Сводная таблица сортирует текстовые значения по алфавиту. Чтобы исправить это, добавьте вспомогательный столбец с числовыми кодами дней недели (ДЕНЬНЕД) и сортируйте по нему.

    Как вывести день недели в формате "15 мая, среда" в одной ячейке?

    Комбинируйте функции ТЕКСТ с оператором конкатенации (&):

    =ТЕКСТ(A1; "Д ММММ") & ", " & ТЕКСТ(A1; "ДДДД")