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

Работа с датами в Microsoft Excel — одна из самых востребованных задач, но даже опытные пользователи иногда сталкиваются с трудностями при попытке вытащить из даты день недели. Почему в одной таблице отображается «понедельник», а в другой — «1»? Как заставить Excel показывать дни недели на русском, если программа упорно выдаёт английские названия? И можно ли обойтись без формул, если вы новичок?

В этой статье мы разберём 5 рабочих способов — от элементарных до продвинутых, — которые помогут отобразить день недели в нужном формате. Вы узнаете, как использовать встроенные функции ТЕКСТ(), ДЕНЬНЕД() и ВЫБОР(), настроить пользовательский формат ячеек, а также автоматизировать процесс для больших массивов данных. Особое внимание уделим типичным ошибкам, из-за которых Excel показывает неверные дни или кодировку.

Если вам нужно просто увидеть день недели для одной даты — хватит пары кликов. Если же требуется анализировать временные ряды, строить отчёты по рабочим/выходным или интегрировать данные с другими системами — пригодятся продвинутые техники. В конце статьи вы найдёте FAQ с ответами на частые вопросы, включая работу с Google Sheets и Excel Online.

Прежде чем переходить к инструкциям, проверьте, какой у вас язык интерфейса Excel. От этого зависит, будет ли программа понимать русские названия дней или потребуется ручная настройка. В Excel 365 и Excel 2021 некоторые функции работают иначе, чем в старых версиях — мы отметим эти нюансы.

1. Самый простой способ: пользовательский формат ячеек

Если вам не нужны отдельные столбцы с днями недели, а достаточно просто отобразить их рядом с датой — этот метод сэкономит время. Он не требует формул и работает даже в защищённых листах.

Выделите ячейку (или диапазон) с датой, затем:

  1. Нажмите правой кнопкой мыши и выберите Формат ячеек (или используйте горячие клавиши Ctrl+1).
  2. В открывшемся окне перейдите на вкладку ЧислоВсе форматы.
  3. В поле Тип введите один из шаблонов:
    • 📅 дддд — полное название дня (например, «понедельник»)
    • 📅 ддд — сокращённое название («пн»)
    • 📅 ддд, дд ммм гггг — комбинированный формат («пн, 15 мая 2023»)
  • Нажмите ОК.
  • Плюсы: не нужно создавать дополнительные столбцы, формат применяется мгновенно.

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

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

    Функция ДЕНЬНЕД() (англ. WEEKDAY()) возвращает номер дня недели для указанной даты. По умолчанию воскресенье считается первым днём (1), но это можно изменить.

    Синтаксис:

    =ДЕНЬНЕД(дата; [тип_возврата])

    где:

    • 📅 дата — ячейка с датой или функция, возвращающая дату (например, СЕГОДНЯ()).
    • 🔢 [тип_возврата] (необязательно) — число от 1 до 3, определяющее систему нумерации:
      • 1 или опущено — воскресенье = 1, суббота = 7.
      • 2 — понедельник = 1, воскресенье = 7.
      • 3 — понедельник = 0, воскресенье = 6.

    Примеры:

    ФормулаРезультат (дата: 15.05.2023)Пояснение
    =ДЕНЬНЕД(A1)2Понедельник (воскресенье = 1)
    =ДЕНЬНЕД(A1; 2)1Понедельник = 1
    =ДЕНЬНЕД(СЕГОДНЯ())4Текущий день недели (например, среда)

    ⚠️ Внимание: Если в ячейке A1 не дата, а текст (например, «15 мая»), Excel вернёт ошибку #ЗНАЧ!. Проверьте формат ячейки — он должен быть Дата, а не Текст или Общий.

    Убедитесь, что ячейка содержит дату, а не текст|Проверьте региональные настройки (воскресенье/понедельник как первый день)|Используйте ТЕКСТ(), если нужен не номер, а название дня-->

    3. Функция ТЕКСТ(): название дня на любом языке

    Если вам нужно не число, а слово («понедельник», «Monday», «пн»), используйте функцию ТЕКСТ(). Она преобразует дату в текстовый формат с учётом языковых настроек системы.

    Синтаксис:

    =ТЕКСТ(дата; "формат")

    где формат — шаблон отображения. Для дней недели подойдут:

    • 📅 "дддд" — полное название («понедельник»)
    • 📅 "ддд" — сокращённое («пн»)
    • 📅 "[$-ru-RU]дддд" — принудительное отображение на русском (если Excel показывает на английском)

    Примеры:

    =ТЕКСТ(A1; "дддд")  → "понедельник"
    

    =ТЕКСТ(A1; "ддд") → "пн"

    =ТЕКСТ(A1; "[$-en-US]дддд") → "Monday"

    ⚠️ Внимание: Если Excel игнорирует локаль (например, вместо «понедельник» показывает «Monday»), проверьте языковые настройки в Файл → Параметры → Язык. Иногда требуется добавить русский языковой пакет или изменить формат даты по умолчанию.

    Полное название («понедельник»)|Сокращённое («пн»)|Числовое (1-7)|Не важно, главное чтобы работало-->

    4. Продвинутый способ: функция ВЫБОР() для кастомных названий

    Если стандартные названия дней вам не подходят (например, нужно «Пн» вместо «пн» или «Рабочий день»/«Выходной»), используйте комбинацию ДЕНЬНЕД() и ВЫБОР().

    Синтаксис:

    =ВЫБОР(ДЕНЬНЕД(дата; [тип]); "Ваш_1"; "Ваш_2"; ...; "Ваш_7")

    Примеры:

    • 📅 Сокращения с заглавной буквы:
      =ВЫБОР(ДЕНЬНЕД(A1); "Вс"; "Пн"; "Вт"; "Ср"; "Чт"; "Пт"; "Сб")
    • 📅 Рабочие/выходные:
      =ВЫБОР(ДЕНЬНЕД(A1; 2); "Рабочий"; "Рабочий"; "Рабочий"; "Рабочий"; "Рабочий"; "Выходной"; "Выходной")
    • 📅 Цветовая маркировка (условное форматирование):

      Сначала создайте столбец с формулой выше, затем используйте Условное форматирование → Правила выделения ячеек → Текст содержит и задайте цвета для «Рабочий»/«Выходной».

    Критичный нюанс: порядок аргументов в ВЫБОР() зависит от параметра [тип] в ДЕНЬНЕД(). Если вы используете ДЕНЬНЕД(A1; 2) (понедельник = 1), то первый аргумент ВЫБОР будет соответствовать понедельнику, а не воскресенью.

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

    Создайте столбец с формулой =ЕСЛИ(ИЛИ(ДЕНЬНЕД(A1;2)>5; [список_праздников]); "Выходной"; "Рабочий"), где [список_праздников] — это проверка на даты из отдельного диапазона (например, =ИЛИ(A1=$D$1:$D$10), где D1:D10 — праздники).

    5. Динамические массивы: день недели для всего столбца

    В Excel 365 и Excel 2021 появилась поддержка динамических массивов. Это позволяет извлечь дни недели для всего столбца с датами одной формулой — без протягивания вниз.

    Пример:

    =ТЕКСТ(A1:A100; "дддд")

    Эта формула автоматически заполнит соседний столбец названиями дней для всех дат в диапазоне A1:A100. Еслиlater вы добавите новую дату в A101, результат обновится без дополнительных действий.

    Плюсы: экономит время при работе с большими таблицами, формула адаптируется к изменениям.

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

    6. Ошибки и решения: почему Excel показывает неверный день

    Даже с правильными формулами Excel иногда выдаёт неожиданные результаты. Вот типичные причины и способы их исправления:

    ПроблемаПричинаРешение
    Вместо «понедельник» отображается ##### Слишком узкий столбец Расширьте столбец или уменьшите размер шрифта
    Дни недели на английском Неверные региональные настройки Используйте ТЕКСТ(A1; "[$-ru-RU]дддд") или измените язык в параметрах Windows/Excel
    Функция ДЕНЬНЕД() возвращает #ИМЯ? Опечатка в названии функции Проверьте синтаксис: в русскоязычном Excel — ДЕНЬНЕД, в англоязычном — WEEKDAY
    Неверный номер дня (например, понедельник = 2 вместо 1) Не указан параметр [тип_возврата] в ДЕНЬНЕД() Явно укажите тип: =ДЕНЬНЕД(A1; 2) для понедельника=1
    Формула не обновляется при изменении даты Отключён автоматический пересчёт Включите в Формулы → Параметры вычислений → Автоматически

    ⚠️ Внимание: Если вы импортировали даты из внешнего источника (например, 1C или SQL), они могут храниться как текст. Чтобы преобразовать их в даты, используйте функцию ДАТАЗНАЧ() или инструмент Текст по столбцам на вкладке Данные.

    FAQ: Частые вопросы о днях недели в Excel

    Как показать день недели на английском, если у меня русский Excel?

    Используйте функцию ТЕКСТ() с явным указанием локали:

    =ТЕКСТ(A1; "[$-en-US]дддд")

    Для других языков замените en-US на нужный код (например, de-DE для немецкого).

    Можно ли выделить цветом выходные дни автоматически?

    Да, с помощью Условного форматирования:

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

      где [проверка_праздников] — это, например, =СЧЁТЕСЛИ($D$1:$D$10; A1)>0 (если в D1:D10 перечислены праздники).

    4. Задайте цвет заполнения (например, красный) и сохраните правило.
    Как в Google Sheets показать день недели?

    В Google Таблицах используйте те же функции, но на английском:

    =WEEKDAY(A1)  → номер дня
    

    =TEXT(A1; "dddd") → полное название

    =CHOOS(WEEKDAY(A1); "Sun"; "Mon"; ...) → кастомные названия

    Для русского языка добавьте локаль:

    =TEXT(A1; "[$-ru]dddd")
    Почему функция ДЕНЬНЕД() возвращает 0?

    Это происходит, если вы используете ДЕНЬНЕД(дата; 3) и дата приходится на понедельник (в этом режиме понедельник = 0). Чтобы избежать путаницы, используйте ДЕНЬНЕД(дата; 2) — тогда понедельник будет 1, а воскресенье — 7.

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

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

    =СУММПРОИЗВ(--(ДЕНЬНЕД(A1:A100;2)=1))

    Эта формула посчитает все понедельники (=1) в диапазоне A1:A100. Для других дней измените число в конце (например, =2 для вторников).

    ⚠️ В старых версиях Excel (до 2019) это должна быть формула массива — завершите ввод нажатием Ctrl+Shift+Enter.