Как правильно выставить дни недели в Excel: от простого к сложному

Работа с датами и днями недели в Microsoft Excel — одна из самых востребованных задач среди пользователей. Будь то составление расписаний, анализ временных рядов или планирование проектов, корректное отображение дней недели экономит часы рутинной работы. Однако многие сталкиваются с проблемами: то дни отображаются числами вместо названий, то последовательность сбивается при копировании, то формулы возвращают ошибки. Эта статья поможет разобраться во всех нюансах — от базовых методов до продвинутых приёмов автоматизации.

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

Для начинающих пользователей мы подготовили пошаговые инструкции с картинками (в текстовом формате), а для опытных — оптимизированные формулы и примеры использования в реальных задачах. Все методы протестированы в Excel 2019-2023 и Microsoft 365, но majority из них работают и в старых версиях программы.

1. Базовый метод: форматирование ячеек с датами

Самый простой способ отобразить дни недели — изменить формат ячейки с датой. Excel хранит даты как последовательные числа (начиная с 1 января 1900 года), но может показывать их в любом текстовом формате.

Чтобы применить формат:

  1. Выделите ячейки с датами (например, A1:A10).
  2. Нажмите правой кнопкой и выберите Формат ячеек (или используйте горячие клавиши Ctrl+1).
  3. Вкладка Число → категория Все форматы.
  4. В поле Тип введите один из кодов:
    • 📅 дддд — полное название (например, "понедельник")
    • 📅 ддд — сокращённое (например, "пнд")
    • 📅 [$-419]дддд — локализованное название на русском (если автоматически отображается на английском)

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

2. Формула ДЕНЬНЕД: преобразование дат в дни недели

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

Базовый синтаксис:

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

где [тип_возврата] — необязательный параметр:

  • 🔢 1 или опущен — неделя начинается с воскресенья (1-7)
  • 🔢 2 — неделя начинается с понедельника (1-7)
  • 🔢 3 — неделя начинается с понедельника (0-6)

Пример формулы для ячейки A1 с датой, где неделя начинается с понедельника:

=ВЫБОР(ДЕНЬНЕД(A1;2); "Пн"; "Вт"; "Ср"; "Чт"; "Пт"; "Сб"; "Вс")

Для полного названия дня используйте функцию ТЕКСТ:

=ТЕКСТ(A1; "дддд")
Почему ДЕНЬНЕД может возвращать неверные числа?

Если в настройках региона вашей системы первый день недели — воскресенье, а вы не указали параметр [тип_возврата], функция будет использовать этот порядок по умолчанию. Чтобы избежать путаницы, всегда явно задавайте второй параметр: 2 для понедельника или 3 для совместимости с ISO 8601.

3. Автоматическое заполнение дней недели без дат

Если у вас нет столбца с датами, но нужно создать последовательность дней недели (например, для шапки расписания), используйте комбинацию функций ДАТА, ДЕНЬНЕД и ТЕКСТ.

Пример для генерации дней с понедельника по воскресенье в строку:

=ТЕКСТ(ДАТА(2023;1;1)+COLUMN(A1)-1; "дддд")

Протяните формулу вправо — Excel автоматически подставит следующие дни.

Для вертикального списка (столбца) используйте ROW() вместо COLUMN():

=ТЕКСТ(ДАТА(2023;1;1)+ROW(A1)-1; "дддд")

Год и месяц в формуле (2023;1) могут быть любыми — главное, чтобы 1-е число было понедельником. Чтобы не зависеть от календаря, используйте этот вариант:

=ТЕКСТ(ДАТА(2023;1;2)-ДЕНЬНЕД(ДАТА(2023;1;2);3)+ROW(A1)-1; "дддд")

Здесь ДАТА(2023;1;2) всегда будет указывать на понедельник (2 января 2023 года — это понедельник).

📊 Какой метод заполнения дней недели вы используете чаще?
Ручной ввод
Форматирование ячеек
Формула ДЕНЬНЕД
Автоматическое заполнение без дат

4. Динамические списки дней недели (Excel 365)

В Microsoft 365 и Excel 2021 появились динамические массивы, которые позволяют создать список дней недели одной формулой. Например, чтобы сгенерировать дни с понедельника по пятницу в столбце, достаточно ввести в одну ячейку:

=ТЕКСТ(ПОСЛЕДОВАТ(5; ;ДАТА(2023;1;2);1); "дддд")

Функция ПОСЛЕДОВАТ создаёт 5 дат, начиная с 2 января 2023 (понедельник) с шагом в 1 день.

Для горизонтального списка добавьте четвёртый параметр 1:

=ТЕКСТ(ПОСЛЕДОВАТ(1;5;ДАТА(2023;1;2);1); "дддд")

Преимущество динамических массивов — автоматическое заполнение соседних ячеек. Если исходные данные изменятся, список дней обновится без ручного протягивания формул.

Ячейка содержит формулу с ПОСЛЕДОВАТ|

Формат ячейки — Общий или Текстовый|

Сосдние ячейки заполняются автоматически (не протягивайте вручную)|

Для изменения порядка дней редактируйте параметры ДАТА в формуле-->

5. Проблемы и ошибки при работе с днями недели

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

Ошибка Причина Решение
Вместо названия дня отображается число (например, 2) Ячейка отформатирована как Общий или Числовой формат Примените формат дддд или используйте функцию ТЕКСТ
Дни недели на английском (Monday вместо "понедельник") Настройки региона в Excel или Windows установлены на английский Используйте формат [$-419]дддд или измените язык в настройках системы
Формула ДЕНЬНЕД возвращает неверные номера Не указан параметр [тип_возврата], и неделя начинается с воскресенья Добавьте ;2 для понедельника: =ДЕНЬНЕД(A1;2)
При копировании формул дни сбиваются Используются относительные ссылки (например, A1 вместо $A$1) Закрепите ссылки на ячейки с датами знаками $ или используйте именованные диапазоны

Критическая ошибка: если в ячейке с датой отображается пятизначное число (например, 44927), это означает, что Excel интерпретирует её как дату, но применяет общий формат. Не пытайтесь вручную конвертировать это число — просто измените формат ячейки на Дата или дддд.

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

Для визуального выделения выходных дней или конкретных дней недели (например, пятниц) используйте Условное форматирование:

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

    (это правило выделит субботу и воскресенье).

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

Для импорта дней недели из внешних источников (например, CSV с датами) используйте Power Query:

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

Эти методы полезны для обработки больших массивов данных, где ручное форматирование заняло бы слишком много времени.

7. Создание выпадающего списка дней недели

Если вам нужно ограничить ввод данных только днями недели, создайте выпадающий список:

  1. Выделите ячейку, где должен быть список.
  2. Перейдите на вкладку ДанныеПроверка данных.
  3. В поле Тип данных выберите Список.
  4. В поле Источник введите:
    Пн,Вт,Ср,Чт,Пт,Сб,Вс

    или укажите диапазон ячеек с днями недели (например, $A$1:$A$7).

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

  1. Создайте список дней в столбце (например, A1:A7).
  2. Перейдите на вкладку ФормулыДиспетчер имёнСоздать.
  3. Задайте имя (например, ДниНедели) и укажите диапазон $A$1:$A$7.
  4. В проверке данных введите в поле Источник =ДниНедели.

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

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

Используйте формулы с ссылками на ячейки с датами. Например, если в A1 указана дата, а в B1 нужно отобразить день недели, введите:

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

При изменении даты в A1 день в B1 обновится автоматически. Для динамических диапазонов (Excel 365) используйте ПОСЛЕДОВАТ.

Почему функция ДЕНЬНЕД возвращает #ЗНАЧ!?

Ошибка #ЗНАЧ! возникает, если в ячейке, на которую ссылается формула, нет корректной даты. Проверьте:

  • 🔹 Формат ячейки — должен быть Дата, а не Текстовый.
  • 🔹 Если дата введена вручную, используйте функцию ДАТАЗНАЧ для преобразования: =ДЕНЬНЕД(ДАТАЗНАЧ(A1);2).
  • 🔹 Убедитесь, что в ячейке нет пробелов или непечатаемых символов (используйте =ЧИСТ(A1) для очистки).

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

Да, для этого измените код локали в формате ячейки. Например:

  • 🇺🇸 Английский: [$-409]дддд → "Monday"
  • 🇩🇪 Немецкий: [$-407]дддд → "Montag"
  • 🇫🇷 Французский: [$-40C]дддд → "Lundi"

Полный список кодов локалей можно найти в документации Microsoft. Альтернативно измените язык в настройках Windows или Office.

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

Используйте функцию СЧЁТЕСЛИ с массивом. Например, чтобы посчитать количество понедельников в диапазоне A1:A30:

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

Здесь ДЕНЬНЕД(...;2)=1 проверяет, является ли день понедельником (1), а СУММПРОИЗВ суммирует все ИСТИНА (преобразованные в 1 с помощью --).


Для Excel 365 можно использовать более простую формулу:
=СЧЁТЕСЛИ(ДЕНЬНЕД(A1:A30;2); 1)

Как создать календарь с днями недели на листе Excel?

Для создания календаря:

  1. В ячейке A1 укажите первый день месяца (например, 1 сентября 2026).
  2. В ячейке B1 введите формулу для отображения дня недели:
    =ТЕКСТ(A1; "дддд")
  3. В ячейке A2 введите формулу для следующего дня:
    =A1+1

    и протяните её на 30-31 ячейку вниз.

  4. Протяните формулу из B1 вправо, чтобы заполнить дни недели для каждой даты.
  5. Примените условное форматирование для выделения выходных (см. раздел 6).

Для автоматического обновления календаря при смене месяца используйте функцию ДАТА с выпадающими списками для года и месяца.