Найти тему

Подсчитываем рабочие дни в Эксель

Бухгалтерам часто нужно подсчитать количество рабочих дней в месяце, или между двух дат. Специально для этого в Эксель есть функция (и в гугл таблицах тоже):

ЧИСТРАБДНИ (NETWORKDAYS)

Эта функция принимает первым аргументом начало периода, а вторым — конец. И выводит количество рабочих дней между этими двумя датами.

Введем в ячейке A1 функцияю ЧИСТРАБДНИ, а в A4 и A5 — начало и конец периода, и укажем эти ячейки, как аргумент функции.

Но просто вычесть субботу и воскресенье — ума много не надо. Наверное, такую функцию можно было бы реализовать самостоятельно. Нужно еще и вычитать праздничные дни. Поэтому в функции ЧИСТРАБДНИ можно указать третий аргумент: список всех праздничных дней.

-2

Еще бы их добавить автоматически... Для этого можем воспользоваться одним из сервисов в интернете, например, http://xmlcalendar.ru, который позволяет загрузить производственный календарь в виде XML. Этот XML файл можно импортировать в Эксель:

-3

Прежде чем импортировать, нужно развернуть таблицу Days (клик на слове Table в колонке Days)

-4

...и таблицу Day (аналогично, клик на слове Table в колонке Day)

-5

Таким образом мы получили таблицу со всеми праздничными днями в году:

-6

Только проблема в том, что дата в колонке A хранится как текст. Добавим колонку E (назовем ее Дата) и вставим следующую формулу:

=ДАТА(2021,ЗНАЧЕН(ЛЕВСИМВ([@[Attribute:d]],ПОИСК(".",[@[Attribute:d]])-1)),ЗНАЧЕН(ПРАВСИМВ([@[Attribute:d]],ДЛСТР([@[Attribute:d]])-ПОИСК(".",[@[Attribute:d]]))))

=DATE(2021,VALUE(LEFT([@[Attribute:d]],FIND(".",[@[Attribute:d]])-1)),VALUE(RIGHT([@[Attribute:d]],LEN([@[Attribute:d]])-FIND(".",[@[Attribute:d]]))))

Получаем список, уже с колонкой дат.

-7

Осталось дело за малым — добавить эту колонку, как аргумент в функцию ЧИСТРАБДНИ:

-8

Теперь мы получили правильный результат!