Как составить график работы на 3 человека в Excel: пошаговое руководство с формулами и шаблоном

Почему Excel — лучший инструмент для составления графиков работы

Составление графика работы для трёх сотрудников вручную — задача, которая отнимает часы и чревата ошибками. Microsoft Excel позволяет автоматизировать этот процесс, исключить конфликты смен и сэкономить до 70% времени на планировании. В отличие от специализированных программ (типа When I Work или Shiftboard), Excel даёт полный контроль над логикой распределения, не требует ежемесячной подписки и работает офлайн.

Главное преимущество Excel — гибкость. Вы можете учитывать индивидуальные пожелания сотрудников, нормы трудового законодательства (например, ограничение на ночные смены подряд) и даже интегрировать график с другими инструментами через Power Query. При этом не нужно быть программистом: достаточно освоить базовые функции вроде ЕСЛИ(), ВПР() и УСЛОВНОЕ ФОРМАТИРОВАНИЕ.

В этой статье вы найдёте не только пошаговую инструкцию, но и уникальный шаблон графика на 3 человек с автоматической проверкой на ошибки (например, двойное бронирование смены или нарушение норм отдыха). Все примеры адаптированы под актуальные версии Excel 2019–2026 и Excel Online.

📊 Как часто вам приходится составлять графики работы?
Еженедельно
Ежемесячно
Резко (по необходимости)
Никогда не составлял

Подготовка исходных данных: что нужно учесть до создания графика

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

  • 📅 Период планирования: даты начала и конца графика (например, с 1 по 30 июня 2026).
  • Типы смен: перечень всех возможных смен (утренняя 8:00–16:00, вечерняя 16:00–0:00, ночная 0:00–8:00) с указанием их длительности.
  • 👥 Список сотрудников: ФИО, должности, ограничения (например, Иванов И.И. не работает в ночные смены по медицинским показаниям).
  • 📝 Пожелания сотрудников: дни, когда кто-то не может работать (отпуск, больничный, учёба).
  • 📊 Нормы труда: максимальное количество смен подряд, минимальный отдых между сменами (по ТК РФ — не менее 42 часов еженедельного отдыха).

Если у вас непрерывное производство (например, круглосуточная охрана или call-центр), добавьте правило перекрытия смен: когда один сотрудник заканчивает работу, другой должен уже быть на месте. Для этого в графике нужно предусмотреть 15–30 минут на стыковку.

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

Собрали ФИО и должности всех 3 сотрудников

Определили типы смен и их длительность

Уточнили пожелания и ограничения каждого сотрудника

Проверли нормы трудового законодательства для вашей отрасли

Подготовили список праздничных и выходных дней-->

Создание базовой структуры графика: шаг за шагом

Откройте новый файл Excel и создайте 3 листа:

  1. Сотрудники — здесь будут данные о команде;
  2. Смены — описание типов смен;
  3. График — итоговая таблица распределения.

На листе Сотрудники создайте таблицу со следующими столбцами:

ФИОДолжностьОграниченияПожелания (дни)
Иванов Иван ИвановичМенеджерНе работает ночью10.06.2026, 17.06.2026
Петрова Мария СергеевнаАдминистраторНет ограничений12.06.2026–14.06.2026
Сидоров Алексей ПетровичОхранникТолько ночные смены

На листе Смены укажите:

Название сменыВремя началаВремя окончанияДлительность (часов)
Утренняя08:0016:008
Вечерняя16:0000:008
Ночная00:0008:008

На листе График создайте календарную сетку. В строке 1 укажите даты (например, с =ДАТА(2026;6;1) до =ДАТА(2026;6;30)), в столбце A — ФИО сотрудников. В ячейках на пересечении будут отображаться смены.

Автоматизация распределения смен: формулы и условное форматирование

Чтобы Excel сам подсказывал, кому и когда назначить смену, используйте комбинацию функций:

  1. Проверка доступности сотрудника:
    =ЕСЛИ(ИЛИ(
    

    СЧЁТЕСЛИ($Пожелания;A$1)=0,

    СЧЁТЕСЛИ(График!B$1:B1;A2)>0

    );"Дост.";"Занят")

    Эта формула проверяет, не попадает ли дата в список "пожеланий" (отпуск/больничный) и не назначена ли уже смена на этот день.

  2. Распределение смен по приоритету:
    =ЕСЛИОШИБКА(
    

    ВПР(A2;Смены!A:D;2;ЛОЖЬ);

    ЕСЛИ(СЧЁТЕСЛИ($B2:B2;Смены!$A$2)=0;"Утро";"Вечер")

    )

    Здесь ВПР ищет первую свободную смену из списка.

Для визуального контроля настройте условное форматирование:

  • 🟢 Зелёный — смена назначена корректно;
  • 🟡 Жёлтый — сотрудник работает 2 смены подряд (требует проверки);
  • 🔴 Красный — конфликт (двойное бронирование или нарушение норм отдыха).

Пример правила для жёлтого цвета (выделяет смены подряд):

  1. Выделите диапазон с графиком (например, B2:AF5).
  2. Перейдите в Главная → Условное форматирование → Создать правило.
  3. Выберите Использовать формулу... и введите:
    =И($B2<>"";$A2<>"";СЧЁТЕСЛИ($B2:B2;$B2)>1)
⚠️ Внимание: Если в вашей версии Excel формулы массива не работают, замените СЧЁТЕСЛИ на СУММПРОИЗВ с критериями. Например:
=СУММПРОИЗВ(--($B$2:B2=B2))>1
Как проверить график на ошибки автоматически?

Создайте отдельный лист "Проверка" и добавьте формулы:

1. Двойные смены: =ЕСЛИ(СЧЁТЕСЛИ(График!B2:AF2;График!B2)>1;"Дубль!";"")

2. Нарушение отдыха: =ЕСЛИ(И(График!B2<>"";График!C2<>"";C2-B2<42/24);"Мало отдыха!";"")

3. Ночные смены подряд: =ЕСЛИ(И(График!B2="Ночная";График!C2="Ночная");">1 ночная!";"")

Растяните формулы на весь период графика — Excel сам подсветит проблемные ячейки.

Пример готового графика на 3 человека (скачать шаблон)

Ниже представлен фрагмент графика для круглосуточной работы с чередованием смен "день-вечер-ночь". Вы можете скачать полный шаблон и адаптировать его под свои нужды.

ФИО / Дата01.06 (пт)02.06 (сб)03.06 (вс)04.06 (пн)
Иванов И.И.УтроВыходнойВечерНочь
Петрова М.С.ВечерНочьВыходнойУтро
Сидоров А.П.НочьУтроВыходнойВечер

Особенности этого шаблона:

  • 🔄 Автоматическое чередование: смены распределяются так, чтобы каждый сотрудник работал поочерёдно утром, вечером и ночью.
  • 📅 Учёт выходных: после ночной смены следует обязательный день отдыха.
  • ⚠️ Система оповещений: если назначить смену вручную с нарушением правил, ячейка станет красной.

Для адаптации под свой коллектив:

  1. Измените имена сотрудников и типы смен на листах Сотрудники и Смены.
  2. Обновите правила условного форматирования (например, добавьте проверку на максимальное количество ночных смен за месяц).
  3. Если нужно учитывать праздничные дни, добавьте столбец с государственными праздниками и модифицируйте формулы.

Распространённые ошибки и как их избежать

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

  1. Двойное бронирование смены:

    Причина: формулы не блокируют ячейку после назначения смены.

    Решение: добавьте проверку =ЕСЛИ(СЧЁТЕСЛИ($B$2:$B$4;B2)>1;"Занято!";"").

  2. Нарушение норм отдыха:

    Причина: Excel не отслеживает перерывы между сменами.

    Решение: используйте формулу:

    =ЕСЛИ(И(B2<>"";C2<>"";(C$1-B$1)*24<42);"Мало отдыха!";"")

  3. Неучтённые праздники:

    Причина: в графике не отмечены нерабочие дни.

    Решение: создайте отдельную таблицу с праздниками и добавьте проверку =ЕСЛИ(СЧЁТЕСЛИ(Праздники!A:A;B$1);"Выходной";"").

Ещё одна типичная ошибка — использование ссылок на ячейки вместо имён. Если вы вручную прописываете =B2+C2 вместо =Утренняя_смена+Вечерняя_смена, при добавлении новых строк формулы сломаются. Чтобы избежать этого, назначьте имена диапазонам через Формулы → Присвоить имя.

⚠️ Внимание: Если вы работаете в Excel Online, некоторые функции (например, ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ) могут быть недоступны. Проверяйте совместимость формул перед сохранением в облаке.

Продвинутые возможности: интеграция с Power Query и Power Automate

Если вам нужно автоматически обновлять график на основе данных из других систем (например, или Google Календарь), используйте Power Query:

  1. Перейдите на вкладку Данные → Получить данные → Из файла/базы данных.
  2. Импортируйте данные о сотрудниках или сменах (например, из CSV или SQL).
  3. В редакторе Power Query очистите данные (удалите пустые строки, исправьте форматы дат).
  4. Загрузите данные в Excel и свяжите их с вашим графиком через ВПР или ИНДЕКС/ПОИСКПОЗ.

Для автоматической рассылки графика сотрудникам настройте Power Automate (бывший Microsoft Flow):

  • 📧 Создайте поток, который отправляет email с вложением (графиком в PDF) каждому сотруднику в первый день месяца.
  • 🔄 Добавьте триггер на обновление файла в OneDrive или SharePoint.
  • 📱 Настройте уведомления в Teams или SMS при изменении графика.

Пример сценария для Power Automate:

  1. Триггер: Когда файл обновляется в папке (OneDrive).
  2. Действие: Преобразовать файл Excel в PDF.
  3. Действие: Отправить email через Outlook (вложение — PDF-график).

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

Как учитывать переработки и оплату по тарифу?

Добавьте на лист Сотрудники столбцы с почасовой ставкой и нормативом часов в месяц. Затем на листе График создайте дополнительные столбцы:

  • Отработано часов: =ЕСЛИ(B2="Утро";8;ЕСЛИ(B2="Ночь";9;0)) (пример для разных смен).
  • Переработка: =ЕСЛИ(SUM(Отработано_часов)>Норма;SUM(Отработано_часов)-Норма;0).
  • Зарплата: =СУММПРОИЗВ(Отработано_часов;Ставка) + Переработка*Ставка*1.5.

Для автоматизации используйте СУММЕСЛИМН по ФИО и типу смены.

Можно ли сделать график на год вперёд?

Да, но учтите:

  1. Excel может тормозить при обработке большого диапазона дат (365 дней × 3 сотрудника × 5 формул = ~5000 вычислений). Оптимизируйте формулы или разбивайте график на кварталы.
  2. Добавляйте буферные дни для корректировок (например, резервные смены на случай болезни).
  3. Используйте Таблицы Excel (Ctrl+T) вместо обычных диапазонов — они лучше масштабируются.
Как экспортировать график в Google Календарь?

Способ 1: Ручной экспорт

  1. Скопируйте диапазон графика (даты + смены).
  2. Вставьте в Google Sheets.
  3. Используйте надстройку Yet Another Mail Merge для создания событий в Google Календаре.

Способ 2: Автоматизация через Apps Script

function createCalendarEvents() {

var sheet = SpreadsheetApp.getActiveSheet();

var data = sheet.getDataRange().getValues();

var calendar = CalendarApp.getDefaultCalendar();

for (var i = 1; i < data.length; i++) {

if (data[i][1] !== "") {

calendar.createAllDayEvent(data[i][0] + ": " + data[i][1], new Date(data[0][i]));

}

}

}

Скрипт создаёт события на весь день. Для точного времени модифицируйте createAllDayEvent на createEvent с указанием начала и конца смены.

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

В шаблоне предусмотрен резервный механизм:

  1. Добавьте на лист Сотрудники столбец Резерв и отметьте, кто может подменить (например, "Да" для Петровой М.С.).
  2. В графике используйте формулу:
    =ЕСЛИ(
    

    И(График!B2="Болезнь";

    СЧЁТЕСЛИ(Сотрудники!$E:$E;"Да")>0);

    "Резерв";

    График!B2

    )

  3. Настройте условное форматирование для ячеек со значением "Резерв" (например, оранжевый цвет).

Для оперативного уведомления резервистов используйте Power Automate с триггером на изменение ячейки.

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

Настройте параметры печати:

  1. Перейдите в Файл → Печать (или Ctrl+P).
  2. В разделе Масштаб выберите Поместить на 1 страницу.
  3. Установите Ориентация: Альбомная.
  4. В Полях уменьшите отступы до 0.5 см.
  5. Если график всё равно не влазит, разбейте его на 2 части: недели 1–2 и 3–4.

Для лучшей читаемости перед печатью:

  • Заморозьте заголовки (Вид → Закрепить области).
  • Уберите сетку (Вид → Сетка — снимите галочку).
  • Добавьте Верхний/Нижний колонтитул с названием отдела и периодом.