Гид по технологиям

Как использовать функцию NETWORKDAYS в Excel — расчёт рабочих дней и часов

6 min read Excel Обновлено 20 Dec 2025
NETWORKDAYS в Excel — расчёт рабочих дней и часов
NETWORKDAYS в Excel — расчёт рабочих дней и часов

Человек просматривает таблицы и графики

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

Что такое NETWORKDAYS в Excel

NETWORKDAYS — встроенная функция Excel (категория Дата/Время), которая возвращает количество рабочих дней между двумя датами. По умолчанию функция исключает субботу и воскресенье и может исключать дополнительные даты праздников, если вы их укажете.

Синтаксис функции:

=NETWORKDAYS(start_date, end_date, [holidays])
  • start_date: дата начала (формат даты).
  • end_date: дата окончания (формат даты).
  • [holidays]: необязательный диапазон или массив с праздничными датами, которые нужно исключить.

Коротко: функция считает дни календаря между start_date и end_date, вычитая все субботы, воскресенья и значения из holidays.

Быстрые примеры и ключевые сценарии

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

1. Подсчёт общего числа рабочих часов в месяце

Ситуация: у вас есть проект с датами начала и конца; вы хотите оценить, сколько рабочих дней и часов (при 8-часовом рабочем дне) попало в период с учётом праздников.

Подсчёт общего числа рабочих дней с помощью NETWORKDAYS

Инструкция:

  1. Запишите даты начала в колонке «Start» и даты окончания в колонке «End».
  2. Составьте список праздничных дат в отдельной колонке (например, H4:H10).
  3. В колонке с рабочими днями используйте формулу:
=NETWORKDAYS(F4,G4,$H$4:$H$10)
  1. Чтобы получить часы, умножьте результат на 8 (или на количество часов рабочего дня):
=NETWORKDAYS(F4,G4,$H$4:$H$10)*8

В примере для «Project A» функция вернёт 51 рабочий день и 408 часов.

2. Сколько рабочих дней осталось в текущем месяце

Задача: нужно узнать оставшиеся рабочие дни в месяце, начиная с произвольной даты (например, 15.10.2022).

Для этого сочетайте NETWORKDAYS и EOMONTH (конец месяца):

=NETWORKDAYS(D6,EOMONTH(D6,0),$E$6:$E$12)

Где D6 — начальная дата (15.10.2022), EOMONTH(D6,0) возвращает 31.10.2022, а диапазон праздников исключается. В примере получится 10 рабочих дней.

3. Основной пример: рабочие дни между двумя датами

Допустим, нужно посчитать рабочие дни между 11.08.2022 и 31.12.2022 с учётом четырёх праздников в диапазоне C10:C13:

=NETWORKDAYS(A10,B10,$C$10:$C$13)

В примере число рабочих дней равно 102. Если у вас нестандартные выходные (например, понедельник и вторник), используйте NETWORKDAYS.INTL.

Примечание: всегда удобнее выделять список праздников абсолютной ссылкой ($C$10:$C$13), чтобы не менять диапазон при копировании формул.

Когда NETWORKDAYS не подойдёт и альтернативы

  • Нестандартные выходные (например, рабочая неделя с четверга по воскресенье) — используйте NETWORKDAYS.INTL.
  • Если нужно сдвинуть дату на N рабочих дней (получить конечную дату) — используйте WORKDAY или WORKDAY.INTL.
  • Если даты хранятся как текст (“15-10-2022”), сначала преобразуйте в дату функцией DATEVALUE или через корректный формат ячеек.
  • Если в расчёте участвуют дробные рабочие дни или учет часов и перерывов — потребуется работа со временем (TIME) и более детальные расчёты по шаблонам смен.

Полезные советы и лучшие практики

  • Всегда используйте абсолютные ссылки для диапазона праздников ($H$4:$H$10), чтобы при копировании формулы список праздников не смещался.
  • Проверяйте формат ячеек: Excel распознаёт дату корректно только если ячейка — формат «Дата» или значение возвращает тип «Дата». В противном случае NETWORKDAYS вернёт ошибку или неверный результат.
  • Если в ваших данных присутствуют временные компоненты (часы:минуты), предварительно отбросьте время функцией INT, чтобы оставить только дату.
  • Для именованных списков праздников создайте диапазон (Formulas → Define Name) — это облегчает повторное использование.

Мини-методология: как встроить NETWORKDAYS в рабочий процесс проекта

  1. Подготовка: убедитесь, что все даты в таблице имеют формат ДАТЫ и что у вас есть централизованный список праздников.
  2. Применение: используйте NETWORKDAYS для расчёта доступных рабочих дней для каждой задачи/фазы.
  3. Конвертация: умножьте дни на стандартную длительность рабочего дня (обычно 8 ч) для оценки часов.
  4. Валидация: сверяйте результаты с реальными календарями и локальными выходными (региональные праздники).
  5. Автоматизация: вынесите формулы в шаблон и используйте именованные диапазоны для повторного использования.

Справочник формул — шпаргалка

  • Подсчёт рабочих дней между A и B с учётом праздников в H:
=NETWORKDAYS(A2,B2,$H$2:$H$10)
  • Подсчёт рабочих часов при 8-часовом дне:
=NETWORKDAYS(A2,B2,$H$2:$H$10)*8
  • Когда выходные нестандартные (NETWORKDAYS.INTL):
=NETWORKDAYS.INTL(start,end,weekend,holidays)

Параметр weekend — строка из 7 символов (1/0) или код; например “0000011” отмечает пятницу и субботу как выходные (в разных системах кодировка может отличаться).

  • Сдвиг даты на N рабочих дней (WORKDAY):
=WORKDAY(start_date, days, [holidays])
  • Оставшиеся рабочие дни до конца месяца:
=NETWORKDAYS(today(),EOMONTH(today(),0),holidays)

Проверка и типичные ошибки (Edge-case gallery)

  • Праздник указан в виде текста, а не даты — Excel может не распознать и не исключить его.
  • Использование локального формата дат (дд.мм.гггг) в файле с региональными настройками, где ожидается мм/дд/гггг — неверное распознавание дат.
  • Положительные и отрицательные промежутки: NETWORKDAYS возвращает положительное число, когда end_date >= start_date; если end_date < start_date — результат может быть нулём или отрицательным в зависимости от версии Excel.
  • Разные версии Excel/Google Sheets могут иметь тонкие отличия в поведении NETWORKDAYS и его расширений.

Роли и чек-листы (кто что делает)

  • Руководитель проекта:

    • Убедиться, что в проекте корректные даты начала/окончания.
    • Проверить список региональных праздников.
    • Оценить ресурсы на основании рабочих дней.
  • HR / менеджер по персоналу:

    • Обновлять централизованный список праздников и нерабочих дней.
    • Проверять влияние праздничных дней на сводные отчёты рабочего времени.
  • Бухгалтер / фрилансер:

    • Использовать NETWORKDAYS для расчёта оплачиваемых дней/часов и выставления счетов.
  • Аналитик/Excel-разработчик:

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

Примеры тест-кейсов для проверки формул

  1. Обычный период без праздников: start=01.03.2023, end=31.03.2023 → ожидаем количество рабочих дней для марта без праздников.
  2. Период, включающий праздник в середине: убедиться, что итог уменьшился на 1.
  3. Нестандартные выходные: проверить NETWORKDAYS.INTL с заданной маской.
  4. Даты с временными метками: проверить результат после применения INT(start_date).

Ментальные модели и эвристики

  • Представляйте рабочие дни как «фильтр» над календарём: берёте полный календарь и выкидываете то, что не является рабочим.
  • Разделяйте планирование (когда должна закончиться задача) и учёт (сколько часов реально потрачено).
  • Всегда думайте об исключениях: аварийные выходные, региональные праздники, срочные изменения графика.

Decision flow (короткая диаграмма)

flowchart TD
  A[Нужно посчитать рабочие дни?] --> B{Выходные стандартные?}
  B -- Да --> C[Использовать NETWORKDAYS]
  B -- Нет --> D[Использовать NETWORKDAYS.INTL]
  C --> E{Нужно сдвинуть дату?}
  D --> E
  E -- Да --> F[Использовать WORKDAY / WORKDAY.INTL]
  E -- Нет --> G[Финиш: получить число рабочих дней]

Критерии приёмки

  • Формулы возвращают ожидаемые значения для 5 тестовых периодов, включая пограничные даты и праздничные дни.
  • Список праздников использует именованный диапазон и абсолютные ссылки в шаблоне.
  • Результаты валидированы с локальным календарём и согласованы с командой.

Короткая сводка и рекомендации

  • NETWORKDAYS отлично подходит для оценки доступных рабочих дней в стандартной рабочей неделе (сб/вс).
  • Для гибкой настройки выходных и сдвига дат используйте NETWORKDAYS.INTL и WORKDAY.INTL.
  • Настройте именованные диапазоны для праздников и всегда проверяйте формат дат.

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

Итог: освоение NETWORKDAYS и соседних функций значительно ускоряет расчёт сроков, упрощает выставление счётов и помогает управлять ресурсами. Начните с малого шаблона и постепенно расширяйте расчёты под ваш бизнес-процесс.

Использование EOMONTH и NETWORKDAYS для расчёта оставшихся рабочих дней в месяце

Исходные данные для расчёта рабочих дней с помощью NETWORKDAYS

Применение функции NETWORKDAYS в Excel

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько USB‑микрофонов в GarageBand
Аудио

Несколько USB‑микрофонов в GarageBand

Как немедленно установить Windows 11
Windows

Как немедленно установить Windows 11

Папка по умолчанию для сохранения в Microsoft Office
Microsoft Office

Папка по умолчанию для сохранения в Microsoft Office

Масштабирование дисплея в Windows — 4K и мульти‑мониторы
Советы по Windows

Масштабирование дисплея в Windows — 4K и мульти‑мониторы

VPN на Chromebook: настройка и советы
Безопасность

VPN на Chromebook: настройка и советы

Просмотр сайтов в мобильном виде в Chrome
Браузеры

Просмотр сайтов в мобильном виде в Chrome