Считаем будние и рабочие дни в Excel
- Смотрите также
- и пользоваться.
- ____________________
могу знать, почему Подскажите как этоTaviscaron как нерабочие помимо дня, чтобы сдвинутьПростая, но весьма частая деньисходил из этого
Функция ДЕНЬНЕД
- : рабочих дней с работает). примера): дням. то необходимо использовать ФункцияЧИСТРАБДНИФункция ДЕНЬНЕД( http://www.cyberforum.ru/post1020284.html )* либо [1; у Вас там
сделать в ворде
: Возможно ли сделать
- суббот и воскресений. на следующий понедельник. задача у многих поста ТС начала года
В формуле ссылку на
Если имеется список сотрудников
- функция ЕОШИБКА() возвращает массив более сложные формулыРАБДЕНЬ
Функция ЧИСТРАБДНИ
- (NETWORKDAYS) вернёт количествоФункция ЧИСТРАБДНИТипа такой: 5] — зависит ноль, если Вы 2003-2007?
так чтобы опираясь
Диапазон с праздниками
- А если попали пользователей Microsoft Excel.в феврале=ЧИСТРАБДНИ(«01.01.2014»;СЕГОДНЯ()) столбец Дата увольнения с датами приема {ЛОЖЬ:ЛОЖЬ:ИСТИНА:ИСТИНА:…}, где ИСТИНА (см. файл примера).
(WORKDAY) возвращает порядковый
рабочих дней (не
Функция РАБДЕНЬMaxsss параметра (который по файл не показываете?
- _Boroda_ на дату, подсчитать можно задать третьим на воскресенье, тоПредположим, что нам необходимо=ЧИСТРАБДНИ(«01.02.2014″;СЕГОДНЯ())для любого текущегоЮрий М нужно заменить на и увольнения на соответствует ошибке.=СУММПРОИЗВ(—ЕОШИБКА(ПОИСКПОЗ(ДЕНЬНЕД(СТРОКА(ДВССЫЛ(A6&»:»&B6));2);{5;6;7};0))) номер даты. Примените считая выходных иИз этого урока вы: умолчанию 1-м днём
Taviscaron
: никак.
Функция РАБДЕНЬ
- все дни где аргументом: добавляем еще день. рассчитать срок доставки месяца 2014 года: Sanja, а зачем столбец Служебный. работу, то подсчитатьДвойное отрицание (—) преобразуетРазберем подробнее:
формат даты к
праздничных дней) между
узнаете, как получитьTrika, недели считает: Прошу прощения, разобрался)в 2007 Excel есть буква «Р»?Легко сообразить, что подобный Не самая сложная
товара, зная дату=ЧИСТРАБДНИ(«01.»&МЕСЯЦ(СЕГОДНЯ())&».2014″;СЕГОДНЯ()) с начала года?Если требуется определить количество
количество отработанных месяцев массив {ЛОЖЬ:ЛОЖЬ:ИСТИНА:ИСТИНА:…} вСТРОКА(ДВССЫЛ(A6&»:»&B6)) возвращает массив последовательных ячейке для её двумя датами. день недели поможет пригодиться.воскресенье тему можно закрывать.
— должны работать_Boroda_
подход можно использовать
формула.
отправки и длительность.
office-guru.ru
Подсчет рабочих дней при нестандарной рабочей неделе в MS EXCEL
Юрий М )) полных отработанных месяцев, можно по следующей числовую форму {0:0:1:1: чисел {40544:40545:40546:…40573:40574} Число отображения.=NETWORKDAYS(A1,B1,E1:E2) дате в Excel
Скачено с другого)Trika все формулы.: Оставшихся до чего? и для поискаНа самом деле можно Поскольку Excel на: А как вамСергей Мытник то читайте одноименную формуле:
1. Рабочие дни ПН-ЧТ (4 рабочих дня), праздники не учитываются
…}
40544 представляет собой
- Календарь ниже поможет вам=ЧИСТРАБДНИ(A1;B1;E1:E2) и как подсчитать сайта:Maxsss: Помогите составить программу,в 2003 Excel Какой ответ должен ближайшего предыдущего, а управиться существенно короче самом деле хранит это?В ТЕКУЩЕМ МЕСЯЦЕ: Юрий, ваша формула статью Сколько полных=(ЧИСТРАБДНИ(B2; ДАТА(ГОД(B2); МЕСЯЦ(B2)+1;0);Праздники)>=15)функция СУММПРОИЗВ() производит сложение начальную дату в
- лучше понять функциюКалендарь ниже поможет вам количество будних/рабочих днейКазанский:
- которая определяет количество — только последняя быть? не следующего рабочего и изящнее :) даты как числа Я про считает общее количество месяцев прошло с+(ЧИСТРАБДНИ(ДАТА(ГОД(C2);МЕСЯЦ(C2);1);C2;Праздники)>=15) без необходимости использования числовом формате (01.01.2011)РАБДЕНЬ лучше понять функцию между двумя датами.: Можно не поTrika
- рабочих (будних) днейВ следующий разМожет, так?
- дня.С 2007 года в (количество дней с стартовое сообщение…
- рабочих дней.. конкретной даты.+РАЗНДАТ(ДАТА(ГОД(B2);МЕСЯЦ(B2)+1;1);ДАТА(ГОД(C2);МЕСЯЦ(C2); 1);»m»)
формулы массива. из ячейки(WORKDAY).ЧИСТРАБДНИФункция всем дням,
2. Рабочие дни ПН-ЧТ (4 рабочих дня), праздники учитываются
в конкретном месяце предупреждайте, что Вам200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СЧЁТЕСЛИМН(A3:AE3;»>=»&E6;A4:AE4;»Р»)Taviscaron Excel появилась функция 1 января 1900===, а ваша
Сергей Мытник
Функция ЧИСТРАБДНИ() вычисляет количество
excel2.ru
Подсчет отработанных месяцев в MS EXCEL
Если требуется подсчитать количествоA6Опять же, если вы(NETWORKDAYS).ДЕНЬНЕДВ первых 28
так как производственный и года? нужно, чтобы формулы-кол-во раб. дней: Добрый вечер форумчане,РАБДЕНЬ (WORKDAY) года), то простоеАвтору: моя формула — показывает цифру: Добрый день!
рабочих дней между рабочих дней на, а 40574 - подставите список праздников,Excel хранит даты в(WEEKDAY) в Excel днях месяца всегда
календарь меняется каждый
Sasha_Smirnov
работали в 2003
до конца месяца. нужна Ваша помощь., которая умеет сдвигать сложение легко даст писалась под стартовое 27. По идее,Как с помощью двумя датами. Сначала неделе, где выходные конечную дату из функция виде чисел и возвращает число от 20 раб. дней. год, количество рабочих
: Это у кого Excel, у Вас Только тогда месяц Есть график работы
исходную дату на нам предполагаемую конечную сообщение, а Вы должна показывать 4
- формулы можно в подсчитывается количество рабочих Среда, Суббота и
- ячейкиРАБДЕНЬ подсчитывает количество дней 1 (воскресенье) до Значит, можно пробежаться дней в конкретном какая работа*! Очевидно,
же в профиле должен быть не магазина, график работы заданное количество рабочих
дату доставки: меняете правила игры… дня ячейке указать количество дней в месяце Воскресенье, то константу
excel2.ru
Расчет количества рабочих дней в месяце
B6(WORKDAY) вернёт дату
с 0 января 7 (суббота), представляющее только по 29, месяце разных годов вы ищете субботы
стоит 2007. январь, а февраль. 2 через 2, дней, причем сдвигОднако, как видно изJayBhagavan
МатросНаЗебре рабочих дней в
приема на работу, массива {5;6;7} нужно
. Этот массив можно до или после 1900 года. Вместо номер дня недели. 30, 31 числу разное (переносы праздников и воскресенья. Будем
Taviscaronили сразу с выходные дни в может быть как
предыдущей картинки, нет
: =ЧИСТРАБДНИ.МЕЖД(КОНМЕСЯЦА(СЕГОДНЯ();-1)+1;СЕГОДНЯ()): =ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);СЕГОДНЯ())
текущем месяце? затем в месяц изменить на {3;6;7}
получить, выделив в
указанного количества рабочих того, чтобы подставлять Судя по всему, (если они есть
и т.д.), то думать (в сторону: Возвращается значение 0 СЕГОДНЯ()
строке помечены буквой положительным (в будущее), никакой гарантии, чтоЮрий Мраб дней с
JayBhagavan увольнения. Именованный диапазон
В случае учета праздничных Строке формул СТРОКА(ДВССЫЛ(A6&»:»&B6))
дней (исключая выходные диапазон ячеек в
16 декабря 2013 в этом м-це): соответственно, логика программы Weekday(Date)).
почему то. ВКод200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СЧЁТЕСЛИМН(A3:AE3;»>=»&СЕГОДНЯ();A4:AE4;»Р»)Если сегодняшний день «В» а рабочие так и отрицательным полученный срок не: И ещё для начала месяца
: Праздники представляет собой дней, формула усложняется и нажав клавишу
и праздничные дни).
формулу, подставьте константы в формуле ниже
Function WorkDays(mon%, yr%) зависит от того____________________ 2003 ворде нужно не считаем, то
буквой «Р». Так
(в прошлое). Фишка попадет на выходные,
Сергея Мытника: привыкайте:
Юрий МСергей Мытник ссылку на диапазон и вводить ееF9
Урок подготовлен для Вас
чисел, которые представляют выпадает на понедельник. As Long ‘возвращает , как вы
* напомнило Обработка только просматривать документ.
знак «=» уберите же есть поле в том, что когда доставка неодна тема — один: А какое нужно?, в зависимости какого праздничных дней, которые нужно как формулу
. командой сайта office-guru.ru эти даты. Чтобы=WEEKDAY(A1) число раб. дней
будете ее использовать. текстовых данных Word.
Должно получится такили еще вариант где выводится команда если взять предыдущий производится. Тогда нужно вопро
ЦитатаПо идее, должна года у Вас нужно исключить из
planetaexcel.ru
Поиск ближайшего рабочего дня функцией РАБДЕНЬ (WORKDAY)
массива, т.е. вместофункция ДЕНЬНЕД() возвращает массивИсточник: www.excel-easy.com/examples/weekdays.html
это сделать, выделите=ДЕНЬНЕД(A1) (пн-пт) «mon» месяцаЕсли планируется использовать Определить каких слов (в 2003 ворде):Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММПРОИЗВ((A3:AE3>=СЕГОДНЯ())*(A4:AE4=»Р»)) «сегодня()».возможно ли опираясь день от предполагаемой взять ближайший рабочийс показывать 4 дняВ эксель…
числа рабочих дляENTER {6:7:1:2:3:4:5:6:7:1:2:3:4:5:6:7:1:2:3:4:5:6:7:1:2:3:4:5:6:7:1}, где 1Перевела: Ольга ГелихE1:E2Ещё для отображения дня «yr» года Dim только прошедшие года в тексте больше200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММПРОИЗВ((массив с датой>=СЕГОДНЯ())*(массив сTaviscaron на команду сегодня
даты доставки и день, т.е. следующий, а то и феврале 4 рабочихМатросНаЗебре правильной работы функциинажимать соответствует понедельнику (01.01.2011),Автор: Антон Андронов
в формуле ниже недели можно использовать d As Date до 2012 - — русских или выходными и рабочими=»Р»)): _Boroda_, попробую ваши высчитать количество оставших с помощью этой понедельник, но какой возникают такие вот дня?: =ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())+1;1)-1)
ЧИСТРАБДНИ().CTRL+SHIFT+ENTER 2 — вторнику
Подсчитаем количество рабочих дней и нажмите функцию WorkDays = 20 это одно, английских (неопределённость искомых, если все варианты — отпишусь. рабочих дней?или это функции добавить к формулой это лучше «непонятки».Сергей МытникСергей МытникФункция РАЗНДАТ() с=СУММ(ЕСЛИ(ЕОШИБКА(ПОИСКПОЗ(ДЕНЬНЕД(СТРОКА(ДВССЫЛ(A6&»:»&B6));2);{5;6;7};0)); и т.д. между двумя датамиF9ТЕКСТ For d =а если нужно сущностей) верно, то почемуНужно просто выводить можно сделать другим нему один рабочий
сделать?Сергей Мытник: По общему количеству: У меня 2007. параметром m подсчитывает—ЕОШИБКА(ПОИСКПОЗ(СТРОКА(ДВССЫЛ(A6&»:»&B6));Праздники;0))))функция ПОИСКПОЗ() поочередно ищет в случае нестандартной.(TEXT). DateSerial(yr, mon, 29)
использовать и дальшеTrika получается 0? остаток рабочих дней, способом? день, то мы
planetaexcel.ru
Остаток рабочих дней опираясь на дату. (Иное)
Первое, что обычно приходит: Ок, Юрий, замечание рабочих дней вопрос, спасибо, формула количество отработанных полныхПодсчитаем количество отработанных месяцев 6, 7, 1, рабочей недели: в=NETWORKDAYS(A1,B1,{41633;41634})=TEXT(A1,»dddd») To DateSerial(yr, mon -другое.:Для формул используйте т.е. если вчераФайл с примером получим либо ту в голову, это
учту. Просто аппетит закрыт. Сейчас интересует работает! А еще месяцев.
в году. Месяц 2, … (т.е. случае четырехдневной недели=ЧИСТРАБДНИ(A1;B1;{41633;41634})=ТЕКСТ(A1;»дддд»)
+ 1, 1)Какие прошедшие года
Нет мне нужно определить специальные теги - я работал, то
приложите. Вас интересует же самую дату конструкция с вложенными приходит во время общее количество прошедших тогда спрошу: подскажите
Если сотрудник еще работает считается отработанным, если числа из предыдущего или когда выходные
Функция
Создайте пользовательский формат даты
— 1 If нужны:2009-2011 или 2000-2011 количество будних дней кнопка fx с сегодняшним рабочим
решение только для (если были будни),
проверками дней недели обеда рабочих дней с
с формулой, которая
в организации, то
человек проработал в массива) среди чисел дни — воскресенье
РАБДЕНЬ (дддд), чтобы отобразить Weekday(d, vbMonday) < ? (пн. вт. ср.Pelena днем у меня Mac? либо ближайший понедельник с помощью функций, ваша формула
начала месяца. бы рассчитывала количество исходную таблицу нужно
нем более 15 константы массива {5;6;7} и среда. При(WORKDAY) почти противоположна название дня недели.
6 Then WorkDaysВ каком приложении
чт. пт.) в: Буква Р в согласно графику 2
Taviscaron (если доставка выпала
ЕСЛИ (IF) работает, спасибо!Эта формула почему-то прошедших рабочих дней слегка модифицировать. рабочих дней. и возвращает номер
подсчете учтем праздники. функцииФункция = WorkDays + это должно работать
конкретном месяце года формуле и в
через 2 должно: Нет. Интересует даже
на субботу илии, ваша формула
не работает.. В на сегодняшний день.Введем в пустую ячейку
Предположим, что по правилам найденной позиции илиПодсчет рабочих дней вЧИСТРАБДНИЧИСТРАБДНИ
1 Next End и как это заранее большое спасибо!
таблице в одной оставатья 14 рабочих больше для windows,
воскресенье). Что иДЕНЬНЕД (WEEKDAY) выдает ошибку «Имя», ячейке никаких расчетовЮрий М
формулу =СЕГОДНЯ() для компании месяц считается ошибку {2:3:#Н/Д:#Н/Д:…} Константа
excelworld.ru
Определить количество рабочих (будних) дней в конкретном месяце и года
случае стандартной рабочей(NETWORKDAYS). Она возвращает(NETWORKDAYS) возвращает количество Function должно использоваться?Sasha_Smirnov
раскладке? дней (если я но на работе требуется:. Что-то типа: возможно, она предназначена не происходит..
: Я не формулист,
отображения текущей даты. отработанным, если человек массива {5;6;7} представляет недели (ПН-ПТ рабочие, дату до или будних дней (исключаяМожно чуть короче.
А тем более: Вот вам идея:_Boroda_ правильно посчитал). mac)Приятным бонусом идет возможностьТ.е. если попали на для более поздней
=ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);СЕГОДНЯ()) конечно, но получилосьСоздадим служебный столбец, ячейки проработал в нем собой перечень дней СБ-ВС выходные) можно после указанного количества выходные) между двумя
DateSerial(yr, mon +
если вам нужно пробежать циклом по: Причем здесь ВордЭто называется количествоА с примером-то указать список праздничных субботу (
версии экселя, чемSanja вот так: которого будут содержать
более 15 рабочих недели, считаемых выходными, осуществить с помощью будних дней (выходные датами. 1, 1) - просто УЗНАТЬ количество дням месяца — вообще? рабочих дней до что?
выходных дней, которыеДЕНЬНЕД установлена у меня.: ЦитатаСергей Мытник пишет:
=ЧИСТРАБДНИ(КОНМЕСЯЦА(A2;-1)+1;КОНМЕСЯЦА(A2;0)) дату увольнения (если дней. Составим формулу
т.е. в данном функции ЧИСТРАБДНИ(). Если исключены).
=NETWORKDAYS(A1,B1) 1 в точности рабочих дней , и в нём,
Поднесите монитор к конца месяца.Taviscaron функциявыдал 6 дляВ любом случае,которая бы рассчитывалаВ А2 -
сотрудник был уволен)
для подсчета количества
случае Пт, Сб необходимо подсчитать рабочие=WORKDAY(A1,B1)
=ЧИСТРАБДНИ(A1;B1)
равно то достаточно собрать
когда Weekday(Day) попал окну, я вTaviscaron
: Не прикрепился сРАБДЕНЬ даты доставки), то всем спасибо за количество прошедших рабочих СЕГОДНЯ или текущую дату отработанных месяцев в и Вс. Ошибка дни в случае=РАБДЕНЬ(A1;B1)Если вы укажете списокDateSerial(yr, mon + 1, информцию за интересующие в диапазон [2; телескоп сейчас посмотрю: Пишется ошибка «имя». первого разатоже будет воспринимать прибавляем еще 2 помощь!! дней на сегодняшнийSanja (если сотрудник еще году (см. файл
#Н/Д соответствует рабочим нестандартной рабочей недели,Примечание: праздников, то функция 0) года,вставить в Excel 6]*, делать +1.
CyberForum.ru
Ну откуда я
На чтение 1 мин. Просмотров 4.5k.
Для вычисления рабочих дней в месяц используйте функцию КОНМЕСЯЦА вместе с функцией ЧИСТРАБДНИ.
В показанном примере формула в C4:
= ЧИСТРАБДНИ(B4; КОНМЕСЯЦА(B4;0); праздники)
Во-первых, важно понимать, что значения в столбце Месяц (B) являются фактическими датами, отформатированными в формате пользовательских чисел «ммм».
Например, B4 содержит 1 января 2014 года, но отображает только «Янв» в соответствии с настраиваемым форматом чисел.
Сама формула основана на функции ЧИСТРАБДНИ, которая возвращает количество рабочих дней между датой начала и датой, с учетом праздников (если они предусмотрены).
Для каждого месяца дата начала исходит из столбца B, а конечная дата вычисляется с помощью функции КОНМЕСЯЦА следующим образом:
КОНМЕСЯЦА (B4;0)
КОНМЕСЯЦА берет дату и возвращает последний день месяца. Сам месяц контролируется вторым аргументом. Так как в этом случае мы хотим остаться в том же месяце, мы используем ноль.
Наконец, список праздников предоставляется в качестве 3-го аргумента ЧИСТРАБДНИ, используя именованные диапазоны праздников (E3: E13).
С помощью этой информации ЧИСТРАБДНИ подсчитывает количество рабочих дней в каждом месяце, автоматически исключая выходные и праздничные дни.
Если вам требуется больше контроля над тем, какие дни считаются выходными, используйте функцию ЧИСТРАБДНИ.МЕЖД.
Функциональность электронных таблиц, созданных в Excel, часто используется для ведения отчетности и слежения за состоянием проекта. Сюда относится и количество рабочих дней, ведь их подсчет часто бывает очень важен. Встроенные формулы позволяют в автоматическом режиме рассчитать количество рабочих дней за определенный промежуток времени, с чем я и предлагаю разобраться далее.
Использование функции ЧИСТРАБДНИ
Сначала предлагаю остановиться на простой функции с названием ЧИСТРАБДНИ, синтаксис которой подразумевает подсчет количества рабочих дней в диапазоне дат с учетом стандартных выходных (субботы и воскресенья), а также указанных вручную праздников, если такие есть. Используйте следующую инструкцию, чтобы разобраться с этой задачей.
-
Для начала обратитесь к листу, где ведете учет дат. Обязательно сделайте так, чтобы первая и последняя дата в промежутке были одинакового формата.
-
Желательно выделить каждый праздник отдельным цветом и пометить его, чтобы не запутаться при составлении следующей формулы.
-
В пустом месте объявите создание формулы при помощи знака = и напишите ЧИСТРАБДНИ.
-
В качестве первого аргумента объявите ячейку, где указано начало даты вычислений.
-
После знака ; укажите конечную дату.
-
Если праздники отсутствуют, формулу можно закрыть и нажать Enter, чтобы применить внесенные изменения. В результате вы увидите число, показывающее количество рабочих дней в заданном промежутке.
-
Если праздники есть, задайте их по очереди как следующие аргументы формулы.
-
Ниже вы видите, что с учетом праздников количество рабочих дней поменялось – значит, формула работает правильно.
Вы можете использовать это вычисление в промежутках дат любых масштабов с указанием неограниченного числа праздников. К сожалению, все их придется помечать вручную, поскольку календарь не может посчитать за вас все религиозные и государственные праздники вашего региона, а также решить, работала ли ваша компания в эти дни.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Использование функции ЧИСТРАБДНИ.МЕЖД
В качестве второго примера разберем почти такую же функцию, но с дополнительной настройкой. Она подразумевает ручной выбор выходных дней, если ваша компания работает не по стандартному графику 5/2 с нерабочими субботой и воскресеньем. Давайте разберемся с тем, как создается формула расчета в этом случае.
-
Вместо описанной выше функции на этот раз объявите ЧИСТРАБДНИ.МЕЖД.
-
Я перейду в окно аргументов, чтобы наглядно рассказать о синтаксисе. В первых двух полях вы указываете дату начала и конца диапазона, как это было показано ранее.
-
Выходные указываются как число, где 1 – суббота, воскресенье, 2 – воскресенье, понедельник, 3 – понедельник, вторник и так далее. Об этих числах я еще расскажу позже.
-
Праздники обозначаются точно так же, как и в предыдущем случае.
-
В результате у вас получится похожая формула, но с одним изменением, которое заключается в самостоятельном выборе выходных дней.
Теперь поговорим непосредственно о тех числах, которые указываются как выходные. У Microsoft есть своя система распределения, первую часть которой я уже описал в одном из предыдущих шагов. Можно указать как выходные два дня подряд или только определенный день недели. Полный список числовых обозначений вы найдете на официальной странице поддержки Microsoft.
Как видите, ничего трудного в расчетах рабочих дней из промежутка дат нет, ведь для этого в Экселе есть две подходящие функции с простым синтаксисом. Надеюсь, моя статья помогла вам разобраться в этом, и теперь в вашем арсенале есть еще одна формула, которую можно свободно использовать при работе с электронными таблицами.
Функция РАБДЕНЬ предназначена для определения даты начала или окончания какого-либо мероприятия относительно заданной начальной или конечной даты с учетом числа выходных и праздничных дней, и возвращает соответствующее значение в виде данных формата Дата.
Функция РАБДЕНЬ.МЕЖД предназначена для определения даты, равной сумме текущей даты и длительности мероприятия, и возвращает соответствующее числовое значение в коде времени Excel.
Примеры использования функций РАБДЕНЬ и РАБДЕНЬ.МЕЖД в Excel
Пример 1. Согласно расчетам, для выполнения проекта сотрудником фирмы потребуется 236 часов его беспрерывной работы. Дата начала проекта – 18.08.2018. Определить дату окончания работы над проектом. В ближайшие 30 дней праздников нет, выходные – суббота и воскресенье.
Вид исходной таблицы данных:
Для решения используем формулу:
Описание аргументов:
- B5 – дата начал события (работы над проектом);
- B6/B8 – число рабочих дней, требуемых для реализации проекта, при условии, что рабочий день длится 8 ч.
Результат вычислений:
Автоматически определилось число для сдачи реализованного проекта по ключ.
Как посчитать количество рабочих дней между датами
Чтобы посчитать количество рабочих или выходных дней между двумя датами в Excel следует использовать функцию ЧИСТРАБДНИ:
Как видите всего в невисокосном 2019-му 262 рабочих дней в году и 103 дня выходных (262+103=365).
Пример 2. Курс предмета в учебном заведении рассчитан на 46 занятий, которые проводятся в понедельник, среду и пятницу. Начало изучения предмета – 3.09.2018. Ближайшие праздники: 17.09.2018, 28.09.2018, 7.10.2018. Определить дату последнего занятия.
Вид исходной таблицы данных:
Формула для расчета:
Результат расчетов:
Последнее занятие будет 24 декабря 2018 года.
Формула оптимального расчета количества рабочих дней между датами
Пример 3. Для выполнения работы в срок было предложено два варианта: увеличить часы в рабочих днях до 10 ч в день или ввести шестидневную рабочую неделю. Расчетная длительность выполнения работы – 127 ч. Выбрать оптимальный вариант, если дата начала проекта – 20.08.2018.
Вид таблицы данных:
Для решения используем следующую формулу:
Функция ЕСЛИ выполняет проверку значений, возвращаемых функциями РАБДЕНЬ.МЕЖДУ и возвращает соответствующий результат. Чем больше дата, тем больше времени потребуется на реализацию проекта.
Результат расчетов:
То есть, чтобы быстрее выполнить работу, лучше увеличить длительность рабочего дня до 10 часов.
Особенности использования функций РАБДЕНЬ и РАБДЕНЬ.МЕЖД в Excel
Функция РАБДЕНЬ имеет следующий синтаксис:
=РАБДЕНЬ(нач_дата;количество_дней;[праздники])
Описание аргументов:
- нач_дата – обязательный аргумент, характеризующий значения формата Дата, которое является точкой отсчета (началом какого-либо события).
- количество_дней – обязательный аргумент, принимающий данные числового типа, которые характеризуют число рабочих дней, прошедших после начала какого-либо события или предшествующих ему. Считается, что данное количество не содержит дни, которые являются праздниками или выходными днями. Для обратного отсчета относительно даты, указанной в качестве аргумента нач_дата, данный аргумент следует оказать в виде отрицательного числа.
- [праздники] – необязательный аргумент, принимающий данные формата Дата, указывающие одну или несколько дат, соответствующих праздничным дням. В качестве данного аргумента может быть передан массив ячеек.
Функция РАБДЕНЬ.МЕЖД имеет следующий синтаксис:
=РАБДЕНЬ.МЕЖД(нач_дата;количество_дней;[выходной];[праздники])
Описание аргументов:
- нач_дата – обязательный аргумент, характеризующий дату начала какого-либо события в виде данных формата Дата;
- количество_дней – обязательный аргумент в виде данных числового типа, характеризующих число дней, которые предшествуют началу какого-либо события (отрицательное число) либо обозначают какую-либо будущую дату (положительное число);
- [праздники] – необязательный аргумент, принимающий одно или несколько значений формата Дата, указывающих даты праздничных дней;
- [выходной] – необязательный аргумент в виде строки из 7 последовательно записанных значений из диапазона от 0 до 1, характеризующей количество выходных дней и их позицию по дням недели, или числового значения из диапазона от 1 до 17. Примеры некоторых вариантов записи данного аргумента:
- 1 (или явно не указан) – выходными днями являются суббота и воскресенье.
- 2 – воскресенье и понедельник.
- 3 – понедельник и вторник (и т. д).
- 11 – только понедельник.
- 12 – только вторник (и т. д.).
- «0000011» — суббота и воскресенье».
- «1000001» — воскресенье и понедельник (и т. д.).
Примечания:
- При использовании обеих рассматриваемых функций необходимо иметь ввиду, что Excel поддерживает даты начиная от 1 января 1900 г. до 31 декабря 9999 г. Если аргумент нач_дата или дата любого праздничного дня представлены в виде даты, не принадлежащей к диапазону допустимых значений, обе функции вернут код ошибки #ЧИСЛО!.
- Если в результате сложения даты, представленной первым аргументом любой из рассматриваемых функций, а также количества дней, заданных вторым аргументом функции, с учетом определенного количества праздничных и выходных дней будет получено значение, находящееся вне диапазона допустимых значений дат, будет возвращен код ошибки #ЧИСЛО!.
- Если аргумент количество_дней представлен в виде дробного числа, дробная часть будет автоматически усечена.
- Функция РАБДЕНЬ.МЕЖД возвращает код ошибки #ЧИСЛО!, если в качестве аргумента [выходной] было передано число не из диапазона допустимых значений или строка, содержащая недопустимые символы, только единицы («1111111») или состоящая из менее чем семи символов.
- При вводе дат в качестве аргументов рассматриваемых функций рекомендуется использовать не текстовые представления дат (например, «10.02.2018»), а функции, возвращающие данные в формате даты (например, ДАТА(18;02;10)).
Скачать примеры расчета количества рабочих дней в Excel
Примечание: в отличие от функции РАБДЕНЬ, предусматривающей возможность указывать лишь даты праздничных дней, функция РАБДЕНЬ.МЕЖДУ позволяет определять число выходных в неделю и указывать, какими днями в неделе являются выходные (например, вместо привычных субботы и воскресенья можно указать вторник и среда).
ЧИСТРАБДНИ (функция ЧИСТРАБДНИ)
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
В этой статье описаны синтаксис формулы и использование функции ЧИСТРАБДНИ в Microsoft Excel.
Описание
Возвращает количество рабочих дней между датами «нач_дата» и «кон_дата». Праздники и выходные в это число не включаются. Функцию ЧИСТРАБДНИ можно использовать для вычисления заработной платы работника на основе количества дней, отработанных в указанный период.
Совет: Чтобы вычислить количество полных рабочих дней между двумя датами с использованием параметров, определяющих количество выходных в неделе и то, какие это дни, используйте функцию ЧИСТРАБДНИ.МЕЖД.
Синтаксис
ЧИСТРАБДНИ(нач_дата;кон_дата;[праздники])
Аргументы функции ЧИСТРАБДНИ описаны ниже.
-
нач_дата — обязательный аргумент. Начальная дата.
-
кон_дата Обязательный. Конечная дата.
-
Праздники Необязательный. Список из одной или нескольких дат, которые требуется исключить из рабочего календаря, например государственные праздники. Список может представлять собой диапазон ячеек, содержащих даты, или константу массива, содержащую числа, которые представляют даты.
Важно: Даты должны быть введены с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2012 г. воспользуйтесь выражением ДАТА(2012,5,23). Если ввести даты как текст, это может привести к возникновению проблем.
Замечания
-
В приложении Microsoft Excel даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию 1 января 1900 г. имеет порядковый номер 1, а 1 января 2012 г. — 40909, так как от 1 января 1900 г. он отс0 до 40 909 дней.
-
Если какой-либо из аргументов не является допустимой датой, networkDAYS возвращает #VALUE! значение ошибки #ЗНАЧ!.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Дата |
Описание |
|
01.10.2012 |
Дата начала проекта |
|
01.03.2013 |
Дата окончания проекта |
|
22.11.2012 |
Праздник |
|
04.12.2012 |
Праздник |
|
21.01.2012 |
Праздник |
|
Формула |
Описание |
Результат |
=ЧИСТРАБДНИ(A2;A3) |
Число рабочих дней между датой начала (01.10.2012) и датой окончания (01.03.2013). |
110 |
=ЧИСТРАБДНИ(A2;A3;A4) |
Число рабочих дней между датой начала (01.10.2012) и датой окончания (01.03.2013) с вычетом праздничного дня 22.11.2012 как выходного. |
109 |
=ЧИСТРАБДНИ(A2;A3;A4:A6) |
Число рабочих дней между датой начала (01.10.2012) и датой окончания (01.03.2013) с вычетом трех праздничных дней. |
107 |
К началу страницы
Нужна дополнительная помощь?
Добрый день! |
|
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
Сергей Мытник, в зависимости какого года у Вас эксель… <#0> |
=ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())+1;1)-1) |
|
У меня 2007. МатросНаЗебре , спасибо, формула работает! А еще тогда спрошу: подскажите с формулой, которая бы рассчитывала количество прошедших рабочих дней на сегодняшний день. |
|
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
#5 06.02.2014 12:54:08 Я не формулист, конечно, но получилось вот так:
В А2 — СЕГОДНЯ |
||
Sanja Пользователь Сообщений: 14838 |
#6 06.02.2014 12:55:12 рабочих дней с начала года
Согласие есть продукт при полном непротивлении сторон. |
||
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
Sanja, а зачем с начала года? )) |
Юрий, ваша формула считает общее количество рабочих дней.. Sanja , а ваша — показывает цифру 27. По идее, должна показывать 4 дня |
|
=ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);СЕГОДНЯ()) раб дней с начала месяца |
|
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
#10 06.02.2014 13:06:26
А какое нужно?
В феврале 4 рабочих дня? |
||||
По общему количеству рабочих дней вопрос закрыт. Сейчас интересует общее количество прошедших рабочих дней с начала месяца. Эта формула почему-то не работает.. В ячейке никаких расчетов не происходит.. |
|
Sanja Пользователь Сообщений: 14838 |
#12 06.02.2014 13:13:22
исходил из этого поста ТС
для любого текущего месяца 2014 года
Изменено: Sanja — 06.02.2014 13:17:19 Согласие есть продукт при полном непротивлении сторон. |
||||||||
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
#13 06.02.2014 13:16:34 А как вам это?
В ТЕКУЩЕМ МЕСЯЦЕ Я про стартовое сообщение… |
||
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
#14 06.02.2014 13:16:49
<#0> |
||
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
И ещё для Сергея Мытника: привыкайте: одна тема — один вопрос, а то и возникают такие вот «непонятки». |
Сергей Мытник Пользователь Сообщений: 62 |
#16 06.02.2014 13:27:21 Ок, Юрий, замечание учту. Просто аппетит приходит во время обеда Sanja , ваша формула работает, спасибо! JayBhagavan , ваша формула выдает ошибку «Имя», возможно, она предназначена для более поздней версии экселя, чем установлена у меня. |
Skip to content
Довольно распространенная задача: определить количество рабочих дней в период между двумя датами – это частный случай расчета числа дней, который мы уже рассматривали ранее. Тем не менее, в Excel для этого даже существуют специальные функции.
Не совсем правильно будет пользоваться простейшими методами вычитания одной даты из другой либо функцией РАЗНДАТ. Ведь мы при этом не учитываем наш график труда и отдыха, что весьма важно.
Microsoft Excel имеет две основных функции, специально предназначенных для расчета будних дней – РАБДЕНЬ (WORKDAY) и ЧИСТРАБДНИ (NETWORKDAYS). Мы также остановимся на дополнительных РАБДНИ.МЕЖД и ЧИСТРАБДНИ.МЕЖД, которые могут быть очень полезными.
Функция РАБДЕНЬ определяет момент времени, который наступит через какое-то количество рабочих дней в будущем или в прошлом. Вы можете использовать ее для добавления или вычитания рабочих дней к определенной точке времени.
Используя формулу ЧИСТРАБДНИ, вы можете рассчитать, сколько рабочих дней во временном интервале.
- Функция РАБДЕНЬ.
- Как добавить или вычесть рабочие дни.
- Настраиваем свой график выходных дней.
- Как рассчитать, сколько рабочих дней между двумя датами?
- А если у нас свой особенный график труда и отдыха?
- Как определить ближайший рабочий день?
- Возможные ошибки при расчетах.
А теперь давайте подробнее рассмотрим каждую их них отдельно и посмотрим, как можно использовать для расчета будних дней в ваших таблицах Excel.
Функция РАБДЕНЬ.
Она возвращает момент времени, который наступит через определенное число рабочих дней (или наступил ранее). Она не учитывает дни отдыха и любые праздники, которые вы отдельно укажете.
Она подходит для расчета производственных графиков и сроков исполнения на основе стандартного производственного календаря, причем суббота и воскресенье – это для нее всегда дни отдыха.
РАБДЕНЬ — это встроенная функция в Excel 2007, 2010, 2013 и 2016. Ее можно ввести руками либо при помощи мастера функций. В более ранних версиях вам нужно специально включать пакет инструментов анализа.
Вам необходимо использовать следующие аргументы:
РАБДЕНЬ(дата_начала; дни; [праздничные_дни])
Первые два обязательны, а последний – по желанию:
- Дата_начала – с нее начинается подсчет дней.
- Дни — рабочие дни, которые нужно добавить или вычесть из начальной точки отсчета. Положительное число возвращает будущий момент времени, отрицательное — возвращает в прошлое.
- Праздничные_дни — необязательный список дат, которые следует считать нерабочими днями. Это может быть либо диапазон ячеек, содержащих даты, которые вы хотите исключить из расчетов, либо константа массива.
Теперь, когда вы знаете основы, давайте посмотрим, как вы можете использовать РАБДЕНЬ в ваших таблицах Excel.
Как добавить или вычесть рабочие дни.
Чтобы рассчитать рабочие дни в Эксель, следуйте этим простым правилам:
- Чтобы добавить будние дни, введите положительное число в качестве аргумента дни в формуле РАБДЕНЬ.
- Чтобы вычесть будние дни, используйте там же отрицательное число.
Предположим, у вас в ячейке A10 указан начальный момент времени, а список праздников — в ячейках А2: А7. Вы хотите узнать, какое число будет через 90 рабочих дней в будущем и прошлом.
Вы можете сделать это, используя следующие формулы:
Чтобы добавить столько же к начальной точке, но учитывая праздничные дни в А2: А7:
=РАБДЕНЬ($A$10;90;$A$2:$A$7)
Чтобы вычесть 90 рабочих дней, исключая праздники:
=РАБДЕНЬ($A$10;-90;$A$2:$A$7)
Чтобы рассчитать сроки на основе текущей даты, используйте функцию СЕГОДНЯ() в качестве точки начала:
Чтобы добавить 90 рабочих дней:
=РАБДЕНЬ(СЕГОДНЯ();90;$A$2:$A$7)
Чтобы переместиться на такое же время назад по отношению к сегодня:
=РАБДЕНЬ(СЕГОДНЯ();-90)
Чтобы указать время начала непосредственно в формуле, используйте формулу ДАТА():
=РАБДЕНЬ(ДАТА(2020;1;7);90;$A$2:$A$7)
На следующем скриншоте показаны результаты всех этих и еще нескольких формул РАБДЕНЬ:
И, естественно, вы можете указать, сколько будних дней нужно добавить либо вычесть из точки начала в некоторой ячейке, а затем сослаться на эту ячейку в своей формуле. Например:
=РАБДЕНЬ($A$10;С1;$A$2:$A$7)
Где A10 — начальная датировка, а C1 — число рабочих дней до (отрицательные числа) или после (положительные числа) нее, без учета праздников.
Настраиваем свой график выходных дней.
В случае, если у вас применяется какой-то особенный график нерабочих дней (не суббота и воскресенье), то вам в помощь – формула РАБДЕНЬ.МЕЖД (WORKDAY.INTL в английской версии).
Она появилась в Excel 2010, в более старых версиях программы ее нет.
Дополнительно к своей предшественнице, она позволяет указывать, какие именно дни недели предназначены у вас для отдыха.
Синтаксис ее выглядит следующим образом:
РАБДЕНЬ.МЕЖД (дата_начала, дни, [выходные], [праздничные_дни])
Первые два аргумента являются обязательными и знакомыми нам:
Дата_начала – начальный момент времени.
Дни — будние дней до (отрицательное значение) или после (положительное значение) начальной точки. Если этот аргумент в результате каких-то расчетов передается в виде десятичного числа, то дробная часть отбрасывается.
Последние два аргумента являются необязательными:
Выходные — указывает, что именно следует считать днями отдыха. Это может быть либо число, либо текст, как показано ниже.
Число |
Выходные дни |
1 или отсутствует |
Суббота Воскресенье |
2 |
Воскресенье понедельник |
3 |
Понедельник вторник |
4 |
Вторник Среда |
5 |
Среда Четверг |
6 |
Четверг Пятница |
7 |
Пятница Суббота |
11 |
Только воскресенье |
12 |
Только понедельник |
13 |
Только вторник |
14 |
Только среда |
15 |
Только четверг |
16 |
Только в пятницу |
17 |
Только суббота |
Текст для указания выходного дня — серия цифр из семи нулей и единиц, представляющих семь дней недели, начиная с понедельника. 1 означает нерабочий день, и 0 — соответственно наоборот. Например:
- «0000010» — суббота — отдыхаем.
- «1000001» — понедельник и воскресенье — отдыхаем.
И вот как это может выглядеть на примере:
Я бы рекомендовал обратить внимание на конструкцию
=РАБДЕНЬ.МЕЖД($A$10;90;»1000001″;$A$2:$A$7)
Просто переставляя 0 и 1, можно прямо указать любой график труда и отдыха.
Все остальное, думаю, достаточно хорошо понятно из скриншота.
Замечание. Функции Excel РАБДЕНЬ и РАБДЕНЬ.МЕЖД возвращают порядковые номера (числа), представляющие даты. Чтобы они отображались как нужно, выделите нужные ячейки и нажмите Ctrl + 1, чтобы открыть диалоговое окно «Формат ячеек». На вкладке «Число» выберите «Дата» и определите нужный формат.
Как рассчитать, сколько рабочих дней между двумя датами?
В ситуациях, когда вам нужно получить число рабочих дней в каком-то временном промежутке, используйте формулу ЧИСТРАБДНИ() (в английском варианте – NETWORKDAYS) :
ЧИСТРАБДНИ (дата_начала; дата_окончания; [праздничные_дни])
Первые два аргумента должны уже быть вам знакомы, а третий (необязательный) аргумент позволяет исключить пользовательский список праздников из подсчета.
Чтобы узнать, сколько будних дней между двумя точками в столбцах A и B, используйте следующую формулу:
=ЧИСТРАБДНИ(A10;B10)
При желании вы можете ввести свой список праздников в отдельный диапазон и дополнить формулу, чтобы исключить эти дни:
=ЧИСТРАБДНИ(A10;B10;A2:A7)
В результате учитываются только будние дни.
А если у нас свой особенный график труда и отдыха?
Если вам нужно обрабатывать какие-то особенные нерабочие дни (например, отдыхаем только в воскресенье, в понедельник и воскресенье и т.д), используйте функцию ЧИСТРАБДНИ.МЕЖД, которая позволяет указать, какие дни недели предназначены для отдыха.
ЧИСТРАБДНИ.МЕЖД (WORKDAY.INTL в английском варианте) — более мощная модификация функции ЧИСТРАБДНИ, которая работает с пользовательскими параметрами выходных . Как и его предшественница, она возвращает число рабочих дней в будущем или в прошлом, но позволяет вам определить, какие именно дни недели в вашем графике нужно считать нерабочими.
Формула ЧИСТРАБДНИ.МЕЖД появилась впервые в Excel 2010, и поэтому недоступна в более ранних версиях программы.
Синтаксис ее выглядит следующим образом:
ЧИСТРАБДНИ.МЕЖД (дата_начала, дни, [выходные], [праздничные_дни])
Первые два аргумента являются обязательными и встречались нам уже неоднократно:
Дата_начала — начальная точка.
Дни — будние дней до (отрицательное значение) или после (положительное значение) точки начала. Если этот аргумент в результате каких-то расчетов предоставляется в виде десятичного числа, то он усекается до целого.
Последние два аргумента являются необязательными:
Выходные — указывает, в какие дни недели вы не работаете. Это может быть либо число, либо текст, как показано ниже.
Число |
Выходные дни |
1 или отсутствует |
Суббота Воскресенье |
2 |
Воскресенье понедельник |
3 |
Понедельник вторник |
4 |
Вторник Среда |
5 |
Среда Четверг |
6 |
Четверг Пятница |
7 |
Пятница Суббота |
11 |
Только воскресенье |
12 |
Только понедельник |
13 |
Только вторник |
14 |
Только среда |
15 |
Только четверг |
16 |
Только в пятницу |
17 |
Только суббота |
Текст для указания выходного дня — серия цифр из семи нулей и единиц, представляющих семь дней недели, начиная с понедельника. 1 означает день отдыха, а 0 — будний день. Например:
- «0000011» — суббота и воскресенье – не работаем.
- «1000001» — понедельник и воскресенье — отдыхаем.
На первый взгляд, такие конструкции могут показаться громоздкими и ненужными, но лично мне этот метод больше нравится, потому что вы можете создавать графики выходных «на лету», не запоминая никаких чисел.
Праздники — необязательный список дней, которые вы хотите исключить из своего календаря. Это может быть диапазон ячеек, содержащих даты, или константа массива из последовательных значений, представляющих их. Все, как и ранее.
А теперь несколько примеров.
=ЧИСТРАБДНИ.МЕЖД(A10;B10;1) – это знакомый нам вариант, когда нерабочими считаются суббота и воскресенье.
А вот =ЧИСТРАБДНИ(A10;B10;11) – отдых только в воскресенье,
=ЧИСТРАБДНИ.МЕЖД(A10;B10;2) – в воскресенье и понедельник. Такой расчет полезен, если в вашей организации свой график работы, не такой, как у всех.
=ЧИСТРАБДНИ.МЕЖД(A11;B11;»1100000″;$A$2:$A$7)
не работаем в понедельник и вторник, учитывается также список праздников.
Вы можете объединить полученное число со своим собственным сообщением, склеив их при помощи оператора &.
Например, давайте посмотрим, сколько нужно еще отработать до конца 2020 года. Для этого введем 31 декабря 2020 года в формате даты, и используем следующее выражение:
=»Осталось «&ЧИСТРАБДНИ(СЕГОДНЯ();ДАТА(2020;12;31);A2:A7)&» дн. до конца года!»
Ух, осталось всего 203 дня! Не так много, как я думал
Примечание. Чтобы учесть свой индивидуальный график работы, используйте ЧИСТРАБДНИ.МЕЖД().
Как определить ближайший рабочий день?
Предположим, мы должны определить, какого числа мы можем выставлять счета своим клиентам, а какого — нет. Думаю, вы согласитесь, что делать это в выходной день не стоит. Поэтому в зависимости от даты мы должны либо оставить ее неизменной, либо предложить другой день — рабочий.
Если выходными днями у нас традиционно считаются суббота и воскресенье, то ближайший рабочий день — это либо пятница, либо понедельник. Вот как это может выглядеть.
Для субботы подсчитать дату ближайшего понедельника можно двумя способами:
=РАБДЕНЬ(A2-1;1)
или
=ЕСЛИ(ДЕНЬНЕД(A3;2)>5;A3+(8-ДЕНЬНЕД(A3;2));A3)
Ближайший рабочий день в прошлом (то есть прошлая пятница) определяется так:
=ЕСЛИ(ДЕНЬНЕД(A4;2)>5;МИН(A4-(ДЕНЬНЕД(A4;2)-5);A4);A4)
Ну и если немного усложнить условие — если день попадает на субботу, тогда ближайший рабочий день — прошедшая пятница, а если на воскресенье — тогда предстоящий понедельник:
=ЕСЛИ(ДЕНЬНЕД(A6;2)>6;A6+(8-ДЕНЬНЕД(A6;2));МИН(A6-(ДЕНЬНЕД(A6;2)-5);A6))
Как видите, на слишком уж сложно.
Возможные ошибки при расчетах.
Если ваша формула РАБДЕНЬ, РАБДЕНЬ.МЕЖД, ЧИСТРАБДНИ или ЧИСТРАБДНИ.МЕЖД возвращает ошибку #ЧИСЛО! или #ЗНАЧ!, причина может быть одной из следующих:
- аргументы начала и конца временного отрезка передают неверные данные (не являются датой, записаны как текст скорее всего)
- аргумент «выходные» указан неверно (например, 22 или «000000011»).
Надеюсь, эти примеры и инструкции были вам полезны. Если еще остались вопросы — пишите в комментариях. Постараюсь ответить.
Также рекомендуем о работе с датами:
В Excel есть несколько функций, которые позволяют посчитать количество рабочих дней между двумя датами в excel. О том, как посчитать количество календарных дней между датами, есть отдельная статья.
- Как посчитать количество рабочих дней между двумя датами функцией ЧИСТРАБДНИ
- Функция ЧИСТРАБДНИ.МЕЖД — когда полезно использовать
- Для чего нужны функции РАБДЕНЬ и РАБДЕНЬ.МЕЖД
Как посчитать количество рабочих дней между двумя датами функцией ЧИСТРАБДНИ
Функция ЧИСТРАБДНИ используется в Excel,чтобы посчитать количество рабочих дней между двумя датами.
Синтаксис функции:
=ЧИСТРАБДНИ(нач_дата; кон_дата; [праздники])
нач_дата и кон_дата — начальная и конечная даты диапазона. Конечная дата обязательно должна быть больше начальной.
[праздники] — необязательный аргумент, можно отдельно указать ссылку на ячейку или диапазон ячеек, в которых указаны даты праздничных дней. В этом случае excel исключит их из числа рабочих дней, даже если это были будние дни.
Конечно, в качестве аргумента [праздники] можно указывать не только праздничные дни, а любые дни, которые нужно исключить из числа рабочих дней.
Если аргумент [праздники] не указывать, excel по умолчанию посчитает количество рабочих дней между двумя датами без учета праздничных дней, вычтя только субботы и воскресенья.
Рассмотрим пример расчета количества рабочих дней между двумя датами. Для наглядности приведен календарь за данный месяц.
-
Без учета праздников (аргумент [праздники] не указан)
Как видите, формула посчитала количество будних дней (понедельник-пятница), не учитывая, что 2-3 и 9-10 мая — это нерабочие дни в связи с праздниками.
-
С учетом аргумента [праздники]
Чтобы из количества рабочих дней исключить нерабочие праздничные дни (или любые другие дни, которые нужно исключить), сначала нужно сделать отдельный список праздничных дней.
Затем добавим в формулу аргумент [праздники]. Обратите внимание, что ссылки на диапазон лучше закрепить абсолютными ссылками.
Другой вариант — создать именованный диапазон для ячеек с датами праздничных дней. Для этого нужно выделить диапазон ячеек, в поле имени указать нужное имя и нажать Enter.
Теперь, когда будете считать количество рабочих дней между двумя датами с учетом праздников, в качестве аргумента [праздники] можно указать имя диапазона.
Функция ЧИСТРАБДНИ.МЕЖД — когда полезно использовать
Отличие функции ЧИСТРАБДНИ.МЕЖД от функции ЧИСТРАБДНИ: функция ЧИСТРАБДНИ при расчете количества рабочих дней между двумя датами учитывает стандартные выходные дни (суббота и воскресенье). А для функции ЧИСТРАБДНИ.МЕЖД можно задать альтернативные выходные дни.
Поэтому функция ЧИСТРАБДНИ.МЕЖД незаменима для учета отработанных дней при скользящем графике.
Синтаксис функции:
=ЧИСТРАБДНИ.МЕЖД(нач_дата; кон_дата; [выходные]; [праздники])
Аргументы нач_дата, кон_дата и [праздники] — аналогичны функции ЧИСТРАБДНИ.
[выходные] — необязательный аргумент, в котором нужно выбрать код дней недели для выходных дней. Этот аргумент принимает числовой код, в котором зашифрованы дни недели.
Давайте рассмотрим ее на примере. В качестве выходных выберем дни Среда и Четверг.
На календаре зеленым закрашены дни, которые формула посчитала рабочими.
Из диапазона дней между датами 01.05.2022 и 20.05.2022 вычтены праздничные дни (диапазон “праздники” из предыдущего примера) и выходные дни (в данном примере СР и ЧТ).
Для чего нужны функции РАБДЕНЬ и РАБДЕНЬ.МЕЖД
Функция РАБДЕНЬ фактически является зеркальной для функции ЧИСТРАБДНИ:
- результатом функции ЧИСТРАБДНИ является количество рабочих дней между двумя датами
- результатом функции РАБДЕНЬ является дата, отстоящее на заданное число рабочих дней вперед или назад от заданной даты.
Синтаксис функции:
=РАБДЕНЬ(нач_дата; число дней; [праздники])
нач_дата — начальная дата, от которой будет отсчитываться количество рабочих дней
число дней — число рабочих дней, которое будет прибавлено к начальной дате.
[праздники] — так же, как и для функции ЧИСТРАБДНИ можно отдельно указать ссылку на ячейку или диапазон ячеек, в которых указаны даты праздничных дней.
Рассмотрим пример использования функции РАБДЕНЬ. Количество дней укажем 15. Обратите внимание: количество дней мы взяли из результата вычисления функции ЧИСТРАБДНИ, а результат получили равный второму аргументу функции (кон_дата) ЧИСТРАБДНИ — 20.05.2021. Именно поэтому эти функции считаются зеркальными.
Чтобы получить количество дней, отстоящих назад от заданной даты, нужно в качестве количества дней указать отрицательное число. Для указания количества дней, вместо числа, можно указать ссылку на ячейку, содержащую число.
Использование аргумента [праздники] — такое же, как в функции ЧИСТРАБДНИ. Праздники можно указать ссылкой на ячейки или именованным диапазоном.
Пример использования функции РАБДЕНЬ с аргументом [праздники].
Функция РАБДЕНЬ.МЕЖД аналогична функции РАБДЕНЬ, только есть возможность указать альтернативные выходные дни (аналогично функции ЧИСТРАБДНИ.МЕЖД).
Синтаксис функции:
=РАБДЕНЬ.МЕЖД(нач_дата; число дней; [выходные];[праздники])
Числовые коды для аргумента [праздники] аналогичны кодам для функции ЧИСТРАБДНИ.МЕЖД (см. выше в этой статье).
Рассмотрим пример использования функции РАБДЕНЬ.МЕЖД. Начальная дата 01.05.2022, количество дней — 15, в качестве выходных дней укажем аргумент 2 (ВС, ПН), праздники — именованный диапазон “праздники” из предыдущих примеров.
Зеленым цветом закрашены указанное количество рабочих дней — 15. Следовательно, дата, которая отстает от 01.05.2022 на 15 дней с учетом выходных ВС и ПН и праздничных дней — 25.05.2022.
В этой статье мы рассмотрели, как посчитать количество рабочих дней между двумя датами разными способами.
Мы ВКонтакте
Вам может быть интересно: