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

Функция NETWORKDAYS в Excel: расчёт рабочих дней и часов

6 min read Excel Обновлено 07 Jan 2026
NETWORKDAYS в Excel — рабочие дни и расчет часов
NETWORKDAYS в Excel — рабочие дни и расчет часов

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

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

Что такое NETWORKDAYS в Excel?

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

Синтаксис:

=NETWORKDAYS(start_date, end_date, [holidays])

Краткое определение параметров:

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

Важно: функция всегда считает оба конца диапазона включительно — если start_date и end_date совпадают и это рабочий день, функция вернёт 1.

Когда использовать NETWORKDAYS

NETWORKDAYS полезна в случаях:

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

Ниже — несколько типичных сценариев и подробные шаги.

Пример 1 — Подсчёт суммарных рабочих часов в месяце

Итоговые дни, вычисленные с помощью NETWORKDAYS

Шаги:

  1. Введите в таблицу даты начала и окончания проектов, список праздников и прочие поля (пример на новой вкладке).
  2. В столбце с праздниками перечислите даты, которые нужно исключить (в примере — диапазон Column H, семь дат).
  3. Вставьте функцию NETWORKDAYS в столбец I, чтобы получить количество рабочих дней:
=NETWORKDAYS(F4,G4,$H$4:$H$10)
  1. Чтобы получить часы (при стандартном 8-часовом рабочем дне), умножьте количество рабочих дней на 8 в столбце J:
=NETWORKDAYS(F4,G4,$H$4:$H$10)*8

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

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

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

Задача: рассчитать количество рабочих дней с произвольной даты до конца месяца. Для этого удобно комбинировать NETWORKDAYS и EOMONTH.

Допустим, текущая дата — 15.10.2022. Чтобы получить оставшиеся рабочие дни до конца октября 2022:

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

Где D6 = 15.10.2022, а $E$6:$E$12 — диапазон праздников. В примере результат составил 10 рабочих дней (15.10.2022 по 31.10.2022).

Практическое руководство: как применить NETWORKDAYS шаг за шагом

  1. Создайте лист и зарегистрируйте столбцы: «Start date», «End date», «Holidays».
  2. Убедитесь, что даты отформатированы как даты.
  3. Введите формулу:
=NETWORKDAYS(A10, B10, $C$10:$C$13)

(абсолютные ссылки на список праздников помогают копировать формулы без ошибок).

Использование функции NETWORKDAYS в Excel

  1. Если в вашей организации выходные дни отличаются от субботы/воскресенья (например, пятница/суббота или любые другие комбинации), используйте NETWORKDAYS.INTL.

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

Когда NETWORKDAYS не подходит (ограничения и случаи отказа)

  • Нестандартные выходные: если дни выходных отличаются от субботы/воскресенья, NETWORKDAYS даёт неправильный результат — используйте NETWORKDAYS.INTL.
  • Частичные рабочие дни: если нужно учитывать половину дня, часы входа/выхода или переменный график, одна только NETWORKDAYS недостаточна — прибавьте корректировки по часам.
  • Часовые пояса и временные метки: функция оперирует датами без временной части — для точного учёта времени используйте расчёты с датой+время.
  • Непрерывные вычисления в больших наборах данных: при очень больших таблицах формулы могут замедлять файл — рассмотрите Power Query или скрипты.

Альтернативы и расширения

  • NETWORKDAYS.INTL(start, end, weekend, [holidays]) — позволяет задать шаблон выходных (например, “0000011” где 1 — выходной).
  • WORKDAY / WORKDAY.INTL — добавляют N рабочих дней к дате и возвращают дату.
  • Power Query / Power BI — для пакетной обработки больших наборов данных и сложных правил рабочего времени.
  • VBA / Google Apps Script — автоматизация кастомных расчётов (например, учёт сменного графика).

Пример использования NETWORKDAYS.INTL:

=NETWORKDAYS.INTL(A2, B2, "0000110", $H$2:$H$10)

Где строка шаблона определяет, какие дни недели считаются выходными (порядок — понедельник → воскресенье).

Быстрая шпаргалка: формулы и шаблоны

  • Количество рабочих дней:
=NETWORKDAYS(start_date, end_date, holidays)
  • Рабочие часы (8 ч/день):
=NETWORKDAYS(start_date, end_date, holidays) * 8
  • Добавить N рабочих дней к дате:
=WORKDAY(start_date, N, holidays)
  • Использовать нестандартные выходные:
=NETWORKDAYS.INTL(start_date, end_date, weekend_string, holidays)

Шаблон таблицы для проекта (рекомендуемые столбцы):

  • Название проекта
  • Start date
  • End date
  • Holidays (ссылка на общий диапазон)
  • Рабочие дни (формула NETWORKDAYS)
  • Рабочие часы (формула × часы в дне)
  • Ответственный

Роль‑ориентированные чеклисты:

  • Менеджер проекта: проверить, что даты корректны, holidays — полный список, результаты протестированы на крайних датах.
  • HR: убедиться в консистентности праздников по стране/региону.
  • Бухгалтерия/Фрилансер: проверить формулы расчёта часов и ставки/ставку за час.

Методология быстрого внедрения (mini‑SOP)

  1. Сбор требований: какой календарь выходных и праздничных дней используется.
  2. Подготовка данных: единый диапазон праздников на отдельном листе.
  3. Валидация: тест на примерах с ожидаемыми результатами (start=end, полностью праздничный период, только выходные).
  4. Документация: пояснить, где хранятся праздники и кто отвечает за их обновление.

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

  • Формулы возвращают ожидаемые значения на контрольных примерах (минимум 5 кейсов).
  • Список праздников централизован и защищён от случайного изменения (рекомендуется использовать именованные диапазоны).
  • При смене политики выходных (например, переход на NETWORKDAYS.INTL) результаты документированы.

Факты и числа (быстрый справочник)

  • NETWORKDAYS учитывает субботу и воскресенье как выходные по умолчанию.
  • WORKDAY и NETWORKDAYS включают обе границы диапазона при подсчёте.
  • Стандартный рабочий день часто принимают за 8 часов — используйте эту конвенцию или свою, если организация другая.

Частые вопросы (FAQ)

Q: В чём разница между NETWORKDAYS и NETWORKDAYS.INTL?

A: NETWORKDAYS использует фиксированные выходные (суббота/воскресенье). NETWORKDAYS.INTL позволяет задать собственный шаблон выходных (например, пятница/суббота).

Q: Учитывает ли NETWORKDAYS праздничные даты?

A: Да, если вы передадите диапазон праздников в третьем параметре, эти даты будут исключены из подсчёта.

Q: Как посчитать частичный рабочий день (например, 4 часа)?

A: NETWORKDAYS считает дни; для частичных дней используйте дополнительные вычисления по часам или храните фактическое количество часов в отдельном столбце и суммируйте их.

Q: Считает ли функция дату завершения включительно?

A: Да — если и start_date, и end_date рабочие, NETWORKDAYS вернёт 1 для одной даты.

Когда стоит выбрать другой подход

  • Если нужен учёт сменного графика с разными часами в разные дни — лучше вести учёт часов в ежедневном журнале или автоматизировать расчёты через Power Query/VBA.
  • Если файлу требуется высокая производительность при миллионах строк — рассчитывайте агрегаты на стороне базы данных или в Power BI.

Завершение и рекомендации

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

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

Краткое действие: добавьте именованный диапазон «Holidays», примените NETWORKDAYS с абсолютными ссылками и протестируйте на трёх‑пяти контрольных примерах.

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

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

RDP: полный гид по настройке и безопасности
Инфраструктура

RDP: полный гид по настройке и безопасности

Android как клавиатура и трекпад для Windows
Гайды

Android как клавиатура и трекпад для Windows

Советы и приёмы для работы с PDF
Документы

Советы и приёмы для работы с PDF

Calibration в Lightroom Classic: как и когда использовать
Фото

Calibration в Lightroom Classic: как и когда использовать

Отключить Siri Suggestions на iPhone
iOS

Отключить Siri Suggestions на iPhone

Рисование таблиц в Microsoft Word — руководство
Office

Рисование таблиц в Microsoft Word — руководство