Очень часто во время сведения количества дней, которые прошли от начальной даты до конечной, не нужно учитывать выходные дни. По выходным фирмы обычно не работают значит для вычислений следует не учитывать такие дни.
Пример расчета количества рабочих дней без выходных
Для расчета количества трудовых дней между датами начальной и конечной за исключением выходных можно воспользоваться функцией ЧИСТРАБДНИ:
Применяемая формула весьма проста. Функция ЧИСТРАБДНИ имеет два обязательных для заполнения аргумента:
- Начальная дата.
- Конечная дата.
Если начальная дата записана в ячейке A2, а конечная в B2, тогда функция возвращает количество только рабочих дней (без суббот и воскресенья) с учетом високосных годов, в которых всего 366 дня.
Главным недостатком данной формулы является тот факт, что она по умолчанию за выходные считает только субботы и воскресенья. Что делать если у вашей фирмы выходными считаются только воскресенья? Или же если вы работаете в сфере торговли у вас могут быть выходные другие дни, например, пятницы и субботы?
Для вычислений данного типа Excel предлагает функцию ЧИСТРАБДНИ.МЕЖД. Данная функция обладает дополнительным важным аргументом – «Выходные». Здесь следует указать один из кодов, который поддерживает данная функция (от 1 и до 15). Данный код определяет которые дни недели должны быть восприняты как выходные и не учитываться при вычислении формулы.
В процессе введения функции вручную в ячейку или в строку формул в момент заполнения третьего аргумента появится подсказка значения кодов 1-15. Как показано ниже на рисунке:
Просто выберите соответствующий вашим требованиям код и нажмите Enter. Теперь вы сами решаете какие дни недели считать выходными, а какие нет.
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 Web App Excel 2010 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
Возвращает количество рабочих дней между двумя датами с использованием параметров, определяющих, сколько в неделе выходных и какие дни являются выходными. Выходные и любые праздники не считаются рабочими днями.
Синтаксис
ЧИСТРАБДНИ.МЕЖД(нач_дата;кон_дата;[выходной];[праздники])
Аргументы функции ЧИСТРАБДНИ.МЕЖД описаны ниже.
-
Нач_дата и кон_дата Обязательный. Даты, разницу между которыми требуется вычислить. Начальная дата может предшествовать конечной дате, совпадать с ней или быть позже нее.
-
Выходной Необязательный. Указывает, какие дни недели являются выходными и не включаются в число рабочих дней между начальной и конечной датой. Значение может задаваться номером выходного дня или строкой, определяющей, какие дни являются выходными.
Номера обозначают следующие выходные дни:
Номер выходного дня |
Выходные дни |
1 или опущен |
Суббота, воскресенье |
2 |
Воскресенье, понедельник |
3 |
Понедельник, вторник |
4 |
Вторник, среда |
5 |
Среда, четверг |
6 |
Четверг, пятница |
7 |
Пятница, суббота |
11 |
Только воскресенье |
12 |
Только понедельник |
13 |
Только вторник |
14 |
Только среда |
15 |
Только четверг |
16 |
Только пятница |
17 |
Только суббота |
Строковые значения дней недели включают семь знаков, каждый из которых обозначает день недели (начиная с понедельника). Значение 1 представляет нерабочие дни, а 0 — рабочие дни. В строке допустимо использовать только знаки 1 и 0. При значении 1111111 всегда возвращается 0.
Например, 0000011 означает, что выходными днями являются суббота и воскресенье.
-
Праздники Необязательный. Набор из одной или нескольких дат, которые необходимо исключить из календаря рабочих дней. Значение «праздники» должно быть диапазоном ячеек, содержащих даты, или константой массива, включающей порядковые значения, которые представляют даты. Порядок дат или значений может быть любым.
Замечания
-
Если начальная дата позже конечной даты, возвращаемое значение будет отрицательным, а его модуль будет равен числу полных рабочих дней.
-
Если start_date вне диапазона для текущего базового значения даты, NETWORKDAYS. InTL возвращает #NUM! значение ошибки #ЗНАЧ!.
-
Если end_date вне диапазона для текущего базового значения даты, NETWORKDAYS. InTL возвращает #NUM! значение ошибки #ЗНАЧ!.
-
Если строка выходных дней имеет недействительные длину или содержит недопустимые символы, NETWORKDAYS. InTL возвращает #VALUE! значение ошибки #ЗНАЧ!.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Формула |
Описание |
Результат |
=ЧИСТРАБДНИ.МЕЖД(ДАТА(2006;1;1),ДАТА(2006;1;31)) |
Получаем 22 предстоящих рабочих дня. Вычитает 9 нерабочитающих выходных дней (5 суббот и 4 воскресенья) из общего числа дней между двумя датами. По умолчанию суббота и воскресенье считаются нерабочитами. |
22 |
=ЧИСТРАБДНИ.МЕЖД(ДАТА(2006;2;28);ДАТА(2006;1;31)) |
Получаем -21, т. е. 21 прошедший рабочий день. |
-21 |
=ЧИСТРАБДНИ.МЕЖД(ДАТА(2006;1;1);ДАТА(2006;2;1);7;{«02.01.2006″;»16.01.2006»}) |
Из 32 дней между 1 января 2006 и 1 февраля 2006 года вычитаем 10 нерабочих дней (4 пятницы, 4 субботы и 2 праздника) и получаем 22 предстоящих рабочих дня. Используем аргумент 7 в качестве выходных дней, которыми являются субботы и воскресенья. Также на этой период времени приходится два праздника. |
22 |
=ЧИСТРАБДНИ.МЕЖД(ДАТА(2006;1;1);ДАТА(2006;2;1);»0010001″;{«02.01.2006″;»16.01.2006»}) |
Получаем 22 предстоящих рабочих дня. Такой же период времени, как и в приведенном выше примере, но с выходными днями по субботам и средам. |
20 |
Нужна дополнительная помощь?
В 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.
В этой статье мы рассмотрели, как посчитать количество рабочих дней между двумя датами разными способами.
Мы ВКонтакте
Вам может быть интересно:
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 2007, 2010, 2013 и 2016. Ее можно ввести руками либо при помощи мастера функций. В более ранних версиях вам нужно специально включать пакет инструментов анализа.
Вам необходимо использовать следующие аргументы:
РАБДЕНЬ(дата_начала; дни; [праздничные_дни])
Первые два обязательны, а последний – по желанию:
- Дата_начала – с нее начинается подсчет дней.
- Дни – рабочие дни, которые нужно добавить или вычесть из начальной точки отсчета. Положительное число возвращает будущий момент времени, отрицательное — возвращает в прошлое.
- Праздничные_дни – необязательный список дат, которые следует считать нерабочими днями. Это может быть либо диапазон ячеек, содержащих даты, которые вы хотите исключить из расчетов, либо константа массива.
Синтаксис
=WORKDAY(start_date, days, [holidays]) – английская версия
=РАБДЕНЬ(нач_дата;количество_дней;[праздники]) – русская версия
Аргументы функции
- start_date (нач_дата) – дата, которую мы берем за точку отсчета;
- days (количество_дней) – общее количество рабочих дней, не включая выходные. Вы можете использовать как положительные, так и отрицательные числа в аргументе;
- [holidays] ([праздники])– (не обязательно) Это диапазон дат, который необходимо исключить из расчетов. Например, это могут быть какие-либо национальные праздники. Также, это может быть ссылка на диапазон ячеек, который содержит даты, или может быть массивом порядковых номеров, которые содержат даты.
Что возвращает функция
Дату, наступающую по прошествии заданного количества рабочих дней.
Как добавить или вычесть рабочие дни.
Чтобы рассчитать рабочие дни в Эксель, следуйте этим простым правилам:
- Чтобы добавить будние дни, введите положительное число в качестве аргумента дни в формуле РАБДЕНЬ.
- Чтобы вычесть будние дни, используйте там же отрицательное число.
Предположим, у вас в ячейке 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, чтобы открыть диалоговое окно «Формат ячеек». На вкладке «Число» выберите «Дата» и определите нужный формат.
Количество дней между двумя датами в Excel
Это очень простой и понятный пример, в котором необходимо от последней даты отнять начальную дату, а полученное значение преобразовать в числовой формат. Как видите это можно произвести без помощи функций, но для получения рабочих дней нам это не подойдет.
Функция РАБДЕНЬ
- Функция РАБДЕНЬ (WORKDAY) почти противоположна функции ЧИСТРАБДНИ (NETWORKDAYS). Она возвращает дату до или после указанного количества будних дней (выходные исключены).
=WORKDAY(A1,B1)
=РАБДЕНЬ(A1;B1)
Примечание: Функция РАБДЕНЬ (WORKDAY) возвращает порядковый номер даты. Примените формат даты к ячейке для её отображения.
Календарь ниже поможет вам лучше понять функцию РАБДЕНЬ (WORKDAY).
Опять же, если вы подставите список праздников, функция РАБДЕНЬ (WORKDAY) вернёт дату до или после указанного количества рабочих дней (исключая выходные и праздничные дни).
Складывать и вычитать календарные дни
Excel позволяет добавлять к дате и вычитать из нее нужное количество дней. Никаких специальных формул для этого не нужно. Достаточно сложить ячейку, в которую ввели дату, и необходимое число суток.
Например, вам необходимо создать резерв по сомнительным долгам в налоговом учете. В том числе нужно просчитать, когда у покупателя возникнет задолженность со сроком 45 дней после дня реализации. Для этого в одну ячейку внесите дату отгрузки. К примеру, это ячейка D2. Тогда формула будет выглядеть так: =D2+45. Вычитаются дни по аналогичному принципу. Главное, чтобы ячейка с датой, к которой будете прибавлять число, имела правильный формат. Чтобы это проверить, нажмите правой кнопкой мыши на ячейку, выберите «Формат ячеек» и удостоверьтесь, что установлен формат «Дата».
Как выглядит формат ячейки в Excel
Таким же образом можно посчитать и количество дней между двумя датами. Просто вычтите из более поздней даты более раннюю. Результат Excel покажет в виде числа, поэтому ячейку с итогом переведите в общий формат: вместо «Дата» выберите «Общий».
К примеру, необходимо посчитать, сколько календарных дней пройдет с 05.11.2019 по 31.12.2019. Для этого введите эти даты в разные ячейки, а в отдельной ячейке поставьте знак «=». Затем вычтите из декабрьской даты ноябрьскую. Получится 56 дней. Помните, что в этом случае в подсчет войдет последний день, но не войдет первый. Если вам необходимо, чтобы итог включал оба дня, прибавьте к формуле единицу. Если же, наоборот, нужно посчитать количество дней без учета обеих дат, то единицу необходимо вычесть.
Сделать ячейку, в которой всегда стоит текущая дата
Введите в ячейку функцию СЕГОДНЯ, и в ней всегда будет актуальная дата. Чтобы функция работала исправно, учтите два условия. Во-первых, проверьте, верно ли стоит дата у вас на компьютере. Программа будет учитывать именно ее. Во-вторых, укажите в настройках Excel, чтобы формулы пересчитывались автоматически. Для этого в левом верхнем углу открытого листа Excel нажмите «Файл». В открывшемся меню выберите «Параметры», затем вкладку «Формулы» и проверьте, чтобы в колонке «Вычисления в книге» был выбран параметр «Автоматически».
В ячейке содержится Дата
В столбце А содержатся значения в формате дата, например в ячейке А6 – 13.08.2012.
Чтобы настроить правило Условного форматирования нужно:
- выделить диапазон А6:А14
- выбрать пункт меню
- выбрать тип правила Использовать формулу для определения форматируемых ячеек
- в поле Форматировать значения, для которых следующая формула является истинной ввести формулу =ДЕНЬНЕД(A6;2)>5
- задать формат, например красную заливку фона ячейки.
Даты в столбце А , у которых номер дня недели >5, будут выделены красным.
В ячейке с пользовательским форматом ДДД или ДДДД содержится Дата
Пусть в столбцах B и С также содержатся значения в формате дата, например в ячейке B6 введем формулу =A6 .
Для ячеек в диапазоне B6:B14 настроим пользовательский формат ДДД (для диапазона С6:С14 ДДДД).
Не смотря на то, что теперь в ячейках отображаются Пн и Понедельник, значения в ячейках продолжают оставаться в формате Дата. В этом можно убедиться скопировав значение ( CTRL+V ), например, из ячейки С6 , и вставив его Как значение ( ). В Строке формул будет отображаться значение 13.08.2012, а не слово понедельник . Поэтому настраивать правило Условного форматирования нужно так как показано в предыдущем разделе.
В ячейке содержится Число
Пусть в столбце D содержится номер дня недели, например в ячейке D6 введем формулу =ДЕНЬНЕД(A6;2) .
В этом случае правило Условного форматирования настраивается аналогично случаю когда в ячейке содержится Дата, только несколько упрощается формула =$D6>5
Сейчас мы создадим автоматический календарь который пригодится не только на текущий год, но и на все последующие года. И для этого нам не понадобятся макросы и программирование. Все что я покажу – сделано с использованием стандартных возможностей Excel.
Делаем заголовки
В ячейку A1 вбиваем следующую формулу: =”Календарь на ” & ГОД(СЕГОДНЯ()) & ” год”. Функция СЕГОДНЯ() возвращает текущую дату (мы часто будем ей пользоваться). Соответственно связка функций ГОД(СЕГОДНЯ()) возвратит нам текущий год.
Теперь создадим заголовки месяцев. В ячейку где стоит Январь запишем следующую формулу =ДАТА(ГОД(СЕГОДНЯ());1;1). Эта функция возвращает первое января текущего года (01.01.2015 в моем случае). Применим к этой ячейке такой формат, чтобы отображалось только название месяца. Для этого откроем формат ячеек сочетанием клавиш Ctrl + 1 и выберем соответствующий формат (см. рисунок).
Для создания заголовков последующих месяцев будем использовать еще одну очень полезную функцию =ДАТАМЕС(B3;1). Эта функция возвращает дату отстоящую от указанной на заданное число месяцев (в нашем случае на один). Таким образом, у нас получается следующая картина (дополнительно я добавил немного форматирования):
Проставляем числа
Для автоматического проставления чисел в календаре мы будем использовать всего одну формулу – формулу массива. На вид звучит страшновато, но если разобраться – все легко и просто. Выделяем ячейки B5:H10 и вводим следующую формулу (не спешим жать Enter):
=ДАТА(ГОД(B3);МЕСЯЦ(B3);1-1)-(ДЕНЬНЕД(ДАТА(ГОД(B3);МЕСЯЦ(B3);1-1))-1)+{0:1:2:3:4:5:6}*7+{1;2;3;4;5;6;7}
Вместо Enter нажимаем сочетание клавиш Ctrl+Shift+Enter, вставляя таким образом формула массива. В результате в выделенном диапазоне получаем числа указанного в ячейке B3 месяца.
Аналогичную операцию проводим с другими месяцами или просто копируем диапазон дат января в следующие месяца. Получаем следующую картину:
Добавляем условного форматирования
Сейчас в январе календарь содержит даты 29, 30, 31 декабря, а также часть дат февраля. Давайте немного скроем эти числа. Для этого будем использовать условное форматирование. Выделяем ячейки B5:H10 и создаем правило условного форматирования. Форматироваться будут ячейки, для которых следующая формула будет являться ИСТИНОЙ:
=И(МЕСЯЦ(B5)<>1+3*(ЧАСТНОЕ(СТРОКА(B5)-5;9))+ЧАСТНОЕ(СТОЛБЕЦ(B5);9))
В качестве формата я выбрал серый текст шрифта и получил следующую картину:
Автоматически выделяем текущую дату в календаре
Для этого создаем еще одно правило условного форматирования. Ячейка будет форматироваться только в том случае, если ее значение будет равно текущей дате (=СЕГОДНЯ()):
Подготовка ячеек для работы с датами
Перед тем как начинать работать с датами в Excel, нужно убедиться, что ячейки, в которых будут храниться даты, отформатированы в формат «Дата». Обычно Excel автоматически присваивает такой формат при вводе данных похожих на дату, но если сделать это вручную, то это позволит избежать возможных проблем.
Для того чтобы изменить формат ячеек их нужно выделить мышкой, кликнуть по ним правой кнопкой и в открывшемся меню выбрать пункт «Формат ячеек».
После этого откроется окно, в котором нужно выбрать формат «Дата», тип формата, который будет использоваться, и нажать на кнопку «ОК».
После настройки формата ячеек можно приступать к работе с датами. Для подсчета количества дней между двумя датами можно использовать различные способы. Ниже мы по отдельности рассмотрим каждый из этих вариантов.
Подсчет количества дней с помощью простой формулы
Самый простой вариант подсчета количества дней между двумя датами, это простая формула, которая будет вычитать одну дату из другой. Делается это очень просто. Для начала вам нужно ввести начальную и заключительную дату в отдельные ячейки и присвоить им формат «Дата», так как это описано выше.
После этого нужно выбрать ячейку, в которой будет находиться результат вычислений, и присвоить ей формат «Общий». Формат «Дата» для ячейки с результатом не подходит, поскольку в этой ячейке будет находиться количество дней (число), а не конкретная дата.
После присвоения формата «Общий», в эту ячейку нужно ввести формулу, которая будет отнимать более раннюю дату от более поздней. Подобная формула вводится очень просто. Выделяем ячейку, в которой должен находится результат, вводим символ «=», потом адрес ячейки с более поздней датой, потом символ «-» и адрес ячейки с более ранней датой.
После ввода формулы нужно нажать на клавишу Enter, и вы получите результат.
Как видим, в данном случае количество дней между двумя датами составляет 41.
Второй способ: определение часов через временной промежуток
Предположим, нам дано время 11 часов 45 минут, требуется узнать, сколько будет по истечении 2 часов 15 минут. Будем действовать по инструкции, чтобы получить результат.
- Отформатируем лист, если в нем проводились предыдущие расчеты, выбираем пустое поле и вписываем в двух соседних ячейках наши часы. Затем кликаем на пустую ячейку рядом. В ней будут выполняться все расчеты.
- Активируем пустую ячейку, переходим в строку формул, где устанавливаем знак «=» без кавычек. Нажимаем на ячейку с показателем часов на данный момент, ставим знак «+», добавляем соседнюю ячейку. Нажимаем кнопку «Enter». В итоге получится время, которое будет после определенного промежутка (в нашем случае по истечении 2 часов 15 минут).
В данном случае вы можете посчитать количество часов по истечении времени только в сутки. Если необходимо вычислить, какой показатель циферблата будет пределом, необходимо выбрать другой формат ячеек. Для этого активируйте окно форматирования и в списке аргументов укажите строчку со звездочкой, обязательно смените вкладку числового формата на «Время».
Источники
- https://mister-office.ru/formuly-excel/workday-networkdays-functions.html
- https://excelhack.ru/funkciya-workday-rabden-v-excel/
- http://topexcel.ru/kak-vychislit-rabochie-dni-v-excel/
- https://office-guru.ru/excel/funkcija-denned-v-excel-379.html
- https://zen.yandex.ru/media/id/593a7db8d7d0a6439bc26099/5e254f062b61697618a72b0c
- https://excel2.ru/articles/vydelyaem-dni-nedeli-cvetom-v-ms-excel
- https://micro-solution.ru/excel/various/calendar
- https://comp-security.net/%D0%BA%D0%BE%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE-%D0%B4%D0%BD%D0%B5%D0%B9-%D0%BC%D0%B5%D0%B6%D0%B4%D1%83-%D0%B4%D0%B2%D1%83%D0%BC%D1%8F-%D0%B4%D0%B0%D1%82%D0%B0%D0%BC%D0%B8-%D0%B2-excel/
- https://studwork.org/spravochnik/informatika/excel/kak-vychislit-vremya-v-excel
Содержание
- Расчет количества дней
- Способ 1: простое вычисление
- Способ 2: функция РАЗНДАТ
- Способ 3: вычисление количеств рабочих дней
- Вопросы и ответы
Для выполнения определенных задач в Excel нужно определять, сколько дней прошло между некоторыми датами. К счастью, у программы имеются инструменты, которые способны решить данный вопрос. Давайте выясним, какими способами можно посчитать разность дат в Экселе.
Расчет количества дней
Прежде, чем начать работать с датами, нужно отформатировать ячейки под данный формат. В большинстве случаев, при введении комплекта символов, похожего на дату, ячейка сама переформатируется. Но лучше все-таки сделать это вручную, чтобы подстраховать себя от неожиданностей.
- Выделяем пространство листа, на котором вы планируете производить вычисления. Кликаем правой кнопкой мыши по выделению. Активируется контекстное меню. В нём выбираем пункт «Формат ячейки…». Как вариант, можно набрать на клавиатуре сочетание клавиш Ctrl+1.
- Открывается окно форматирования. Если открытие произошло не во вкладке «Число», то следует в неё перейти. В блоке параметров «Числовые форматы» выставляем переключатель в позицию «Дата». В правой части окна выбираем тот тип данных, с которым собираемся работать. После этого, чтобы закрепить изменения, жмем на кнопку «OK».
Теперь все данные, которые будут содержаться в выделенных ячейках, программа будет распознавать как дату.
Способ 1: простое вычисление
Проще всего вычислить разность дней между датами с помощью обычной формулы.
- Записываем в отдельные ячейки отформатированного диапазона даты, разность между которыми нужно вычислить.
- Выделяем ячейку, в которой будет выводиться результат. В ней должен быть установлен общий формат. Последнее условие очень важно, так как, если в этой ячейке стоит формат даты, то в таком случае и результат будет иметь вид «дд.мм.гг» или другой, соответствующий данному формату, что является некорректным итогом расчетов. Текущий формат ячейки или диапазона можно просмотреть, выделив его во вкладке «Главная». В блоке инструментов «Число» находится поле, в котором отображается данный показатель.
Если в нем стоит значение, отличное от «Общий», то в таком случае, как и в предыдущий раз, с помощью контекстного меню запускаем окно форматирования. В нем во вкладке «Число» устанавливаем вид формата «Общий». Жмем на кнопку «OK».
- В отформатированную под общий формат ячейку ставим знак «=». Кликаем по ячейке, в которой расположена более поздняя из двух дат (конечная). Далее жмем на клавиатуре знак «-». После этого выделяем ячейку, в которой содержится более ранняя дата (начальная).
- Чтобы увидеть, сколько времени прошло между этими датами, жмем на кнопку Enter. Результат отобразится в ячейке, которая отформатирована под общий формат.
Способ 2: функция РАЗНДАТ
Для вычисления разности в датах можно также применять специальную функцию РАЗНДАТ. Проблема в том, что в списке Мастера функций её нет, поэтому придется вводить формулу вручную. Её синтаксис выглядит следующим образом:
=РАЗНДАТ(начальная_дата;конечная_дата;единица)
«Единица» — это формат, в котором в выделенную ячейку будет выводиться результат. От того, какой символ будет подставлен в данный параметр, зависит, в каких единицах будет возвращаться итог:
- «y» — полные года;
- «m» — полные месяцы;
- «d» — дни;
- «YM» — разница в месяцах;
- «MD» — разница в днях (месяцы и годы не учитываются);
- «YD» — разница в днях (годы не учитываются).
Так как нам нужно рассчитать разницу в количестве дней между датами, то наиболее оптимальным решением будет применение последнего варианта.
Также нужно обратить внимание, что, в отличие от способа с применением простой формулы, описанного выше, при использовании этой функции на первом месте должна находиться начальная дата, а конечная – на втором. Иначе расчеты будут некорректными.
- Записываем формулу в выбранную ячейку, согласно её синтаксису, описанному выше, и первичным данным в виде начальной и конечной даты.
- Для того, чтобы произвести расчет, жмем кнопку Enter. После этого результат, в виде числа обозначающего количество дней между датами, будет выведен в указанную ячейку.
Способ 3: вычисление количеств рабочих дней
В Экселе также имеется возможность произвести вычисление рабочих дней между двумя датами, то есть, исключая выходные и праздничные. Для этого используется функция ЧИСТРАБНИ. В отличие от предыдущего оператора, она присутствует в списке Мастера функций. Синтаксис у этой функции следующий:
=ЧИСТРАБДНИ(нач_дата;кон_дата;[праздники])
В этой функции основные аргументы, такие же, как и у оператора РАЗНДАТ – начальная и конечная дата. Кроме того, имеется необязательный аргумент «Праздники».
Вместо него следует подставлять даты праздничных нерабочих дней, если таковые имеются за охватываемый период. Функция производит расчет всех дней указанного диапазона, исключая субботы, воскресенья, а также те дни, которые добавлены пользователем в аргумент «Праздники».
- Выделяем ячейку, в которой будет находиться итог вычисления. Кликаем по кнопке «Вставить функцию».
- Открывается Мастер функций. В категории «Полный алфавитный перечень» или «Дата и время» ищем элемент «ЧИСТРАБДНИ». Выделяем его и жмем на кнопку «OK».
- Открывается окно аргументов функции. Вводим в соответствующие поля дату начала и конца периода, а также даты праздничных дней, если таковые имеются. Жмем на кнопку «OK».
После указанных выше манипуляций в предварительно выделенной ячейке отобразится количество рабочих дней за указанный период.
Урок: Мастер функций в Excel
Как видим, программа Excel предоставляет своим пользователем довольно удобный инструментарий для расчета количества дней между двумя датами. При этом, если нужно рассчитать просто разницу в днях, то более оптимальным вариантом будет применение простой формулы вычитания, а не использование функции РАЗНДАТ. А вот если требуется, например, подсчитать количество рабочих дней, то тут на помощь придет функция ЧИСТРАБДНИ. То есть, как всегда, пользователю следует определиться с инструментом выполнения после того, как он поставил конкретную задачу.
Перейти к содержанию
Обучаем с нуля работать в Excel
- Курсы
- Курс «От новичка до мастера Excel»
- Курс «Продвинутый Excel»
- Курс «ТОП функций и формул Excel»
- Курс «Функция ВПР: с нуля до PRO»
- Курс «Сводные таблицы в Excel»
- Личный кабинет
- Вход для учеников
- Блог
В этом видео я покажу вам как рассчитать количество рабочих дней между двумя датами.
Больше лайфхаков в нашем Telegram Подписаться
Поделитесь, пожалуйста, в комментариях, был ли полезен этот совет?
Почитайте еще
Как добавить текущую дату в ячейку Excel?
Умеете ли вы извлекать из ячейки с датой название месяца?
Функция DATEDIF (РАЗНДАТ) в Excel используется для
Функция WEEKDAY (ДЕНЬНЕД) в Excel используется для
Вычисление разности дат в Microsoft Excel
Смотрите также вот так: что я пишу: Это — по-вашему. диалогового окна «ФорматДни в года наиболее нажмите Enter. Теперь праздников (например, отпуск), вычесть дни, месяцы, указанное количество дней. > Но есть функция
поместить в одну количество дней на
Расчет количества дней
в предварительно выделенной описанного выше, при можно просмотреть, выделивДля выполнения определенных задач=ЧИСТРАБДНИ(КОНМЕСЯЦА(A2;-1)+1;КОНМЕСЯЦА(A2;0)) «от фонаря»? Потрудитесь объяснить форумчаном ячеек». Для его точно преобразует функция:=РАЗНДАТ(). вы сами решаете читайте в статье года к дате,
- Для этого естьчч:мм ЧИСТРАБДНИ. Функция из ячейку, как в 7, поскольку в ячейке отобразится количество использовании этой функции его во вкладке в Excel нужноВ А2 -Drem таинства ваших подсчетов вызова нажмите: CTRL+1.
- Английская версия =DATEDIF(). какие дни недели «Количество дней между написано в статьефункция «РАБДЕНЬ» в Excel,, если он еще примера выше в этом примере. Можно неделе 7 дней. рабочих дней за на первом месте«Главная» определять, сколько дней СЕГОДНЯ: А я и по часам - На закладке «Число» Вы не найдете считать выходными, а датами без праздников
«Работа с датамикоторая определяет дату не задан. Excel 2007 имела бы использовать амперсанды, кавычки
Способ 1: простое вычисление
Учтите, что этот указанный период. должна находиться начальная. В блоке инструментов
- прошло между некоторымиSanja пробывал только вот в обычные дни,
- выберите в списке ее в списке какие нет. в Excel» здесь. в Excel». вперед или назадВ еще одной ячейке такой вид: и текст. Такую результат также долженУрок: дата, а конечная«Число» датами. К счастью,: рабочих дней с часы и минуты укороченные, предпраздничные и «Числовые форматы» - мастера функций (SHIFT+F3).Дата и время вКак посчитать остатокРассмотрим, на количество рабочих вычтите значение ячейки=ЧИСТРАБДНИ(D53;E53) формулу дольше вводить,
иметь числовой формат.Мастер функций в Excel – на втором.находится поле, в у программы имеются начала года он считает, а пр.пр. Да не «Дата». В разделе Но если просто Excel – это дней в определенномкак в дней от указанной начального времени из. Не нужно указывать
- но зато здесь Нажмите клавиши CTRL+1.Как видим, программа Excel Иначе расчеты будут котором отображается данный инструменты, которые способны=ЧИСТРАБДНИ(«01.01.2014»;СЕГОДНЯ()) вот разницу в на пальцах, а «Тип» отображаются самые введете ее в числа сформатированные специальным периоде, например, остатокExcel даты.
- значения ячейки конечного 1, потому что все вычисления в Затем выберите предоставляет своим пользователем некорректными. показатель. решить данный вопрос.
Способ 2: функция РАЗНДАТ
Юрий М сутки(24 часа) не (как требуют пп популярные форматы для строку формул, то образом. Датой является неиспользованных дней отпуска,посчитать количество воскресений междуВнимание! времени. функция ЧИСТРАБДНИ по
одном месте.
Числовой довольно удобный инструментарийЗаписываем формулу в выбраннуюЕсли в нем стоит Давайте выясним, какими: Sanja, а зачем учитывает ответ 1:30 2.2, 2.3 Правил) отображения дат. она сработает.
- целая часть числа,
- смотрите в статье
- датами
- В ячейках сНажмите клавиши CTRL+1 (или
- умолчанию считает субботуСовет. >
- для расчета количества ячейку, согласно её значение, отличное от
способами можно посчитать с начала года?Serge_007 в файле примереСкачать примеры вычисления датыФункция РАЗНДАТ поддерживает несколько
а время (часы «Посчитать остаток дней, или суббот, или датой должен стоять+1 на компьютере и воскресенье выходнымиЧтобы добавить вЧисло десятичных знаков: 2 дней между двумя синтаксису, описанному выше,«Общий» разность дат в
- )): строк на 15-20 в Excel параметров: и минуты) –
- в периоде в любого другого дня формат «Дата». Про с Mac OS). Выберите днями. формулу разрыв строки,. датами. При этом, и первичным данным
Способ 3: вычисление количеств рабочих дней
, то в таком Экселе.Сергей МытникDrem — в реальнойЧитайте также: Функции дляПараметр это дробная часть. Excel». недели. формат чисел смотрите(все форматы)Если у вас выходные нажмите клавиши ALT+ВВОД.
В этом примере начальная
если нужно рассчитать в виде начальной случае, как иСкачать последнюю версию: Юрий, ваша формула: Может я что структуре и форматах. работы с датамиОписаниеПо умолчанию число 1Очень часто во время
Как производить расчеты статью «Число Excel. > дни не в Это упростит чтение. дата находится в просто разницу в и конечной даты. в предыдущий раз, Excel считает общее количество то не так Принимается?..
- в Excel»d» соответствует дате 01 сведения количества дней, дат, смотрите в Формат».
- чч:мм субботу и воскресенье, Если не видно ячейке D5, а днях, то болееДля того, чтобы произвести с помощью контекстногоПрежде, чем начать работать рабочих дней.. делаю,laryboy
- На следующем уроке мыКоличество полных дней января 1900 года. которые прошли от статье «Работа сПрибавить рабочие дни к. укажите вместо «1» всю формулу целиком, конечная — в ячейке
оптимальным вариантом будет расчет, жмем кнопку меню запускаем окно с датами, нужно, а ваша
Подскажите пожалуйста.: Укороченные дни опускаем,
на готовых примерах»m» То есть каждая начальной даты до датами в Excel» дате ExcelЧтобы вычислить время между другое число из нажмите клавиши CTRL+SHIFT+U. E5. Параметр применение простой формулыEnter форматирования. В нем отформатировать ячейки под — показывает цифруMichael_S бог с ними будем работать соКоличество полных месяцев дата – это конечной, не нужно здесь.. двумя датами и списка IntelliSense. Например,Вы можете скачать пример
»m»
lumpics.ru
Вычисление разности двух дат
вычитания, а не. После этого результат, во вкладке данный формат. В 27. По идее,: вот файл для временем и периодами»y» количество дней прошедших учитывать выходные дни.Обратите внимание!Например, нам нужно значениями времени, можно «2» назначает выходными книги со всемив формуле возвращает использование функции в виде числа«Число» большинстве случаев, при
должна показывать 4Serge_007 примера суток.Количество полных лет от 01.01.1900. На По выходным фирмыВ конце статьи узнать, какая будет
просто вычесть одного днями воскресенья и примерах в этой количество полных месяцевРАЗНДАТ обозначающего количество дней
Разность в днях
устанавливаем вид формата введении комплекта символов, дня: Что ещё подсказать?laryboylaryboy»ym» данном уроке детально обычно не работают в разделе «Другие дата через 28
Разность в неделях
из другого. Но понедельники. статье. Следить за между двумя датами.. А вот если между датами, будет«Общий» похожего на дату,МатросНаЗебреВсё что требуется: Так, вообщем ещё: Добрый день, необходимаКоличество полных месяцев без рассмотрим даты, а значит для вычислений статьи по этой рабочих дней. У к каждой ячейкеЕсли у вас Excel 2007, ходом обсуждения илиВ этом примере начальная требуется, например, подсчитать
Разность в месяцах
выведен в указанную. Жмем на кнопку ячейка сама переформатируется.: =ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);СЕГОДНЯ()) я написал выше раз нормально опишу ваша помощь. учета лет на следующих уроках
Разность в годах
следует не учитывать теме» есть много нас такая таблица необходимо применить форматирование, пропустите это действие. создать собственные формулы. дата находится в количество рабочих дней, ячейку.
Вычисление возраста в годах, месяцах и днях
«OK» Но лучше все-такираб дней сТяжело два действия задачу, есть 2Мне надо посчитать»md»
1. Используйте функцию РАЗНДАТ для вычисления суммарного количества лет.
– время. такие дни. статей с описанием с данными. чтобы приложение Excel Функция ЧИСТРАБДНИ вЗагрузить примеры Дата ячейке D2, а то тут на
2. Используйте функцию РАЗНДАТ с параметром «ym» для вычисления количества месяцев.
В Экселе также имеется. сделать это вручную, начала месяца сделать неправильно даты с точностью разницу рабочего времениКоличество дней без учета
3. Используйте другую формулу, чтобы найти дни.
Так как дата являетсяДля расчета количества трудовых разных расчетов дат,Внимание! вернуло нужный результат. Excel 2007 всегда считает расчета конечная — в ячейке помощь придет функция возможность произвести вычислениеВ отформатированную под общий чтобы подстраховать себяЮрий МПеречитывайте мои ответы по времени пример: между двумя датами месяцев и лет числом, значит можно дней между датами стажа, возраста, отпуска,В ячейках, вВ одной ячейке введите выходными днями субботуКак было показано выше, E2. ПараметрЧИСТРАБДНИ рабочих дней между формат ячейку ставим от неожиданностей.
: А какое нужно? и пробуйте заново 27.12.2017 13:14 (Срок исключая выходные и»yd» проводить с ним
4. Необязательно: объедините три формулы в одну.
начальной и конечной времени, как определить которых пишем даты, полное значение начальной и воскресенье. функция РАЗНДАТ вычисляет»y». То есть, как двумя датами, то знакВыделяем пространство листа, наЦитатаПо идее, должна до тех пор окончания работы) и праздники (с учётомКоличество дней без учета математические вычислительные и за исключением выходных
Скачивание образцов
день недели по нужно установить формат даты и времени.Если вы присвоили имя разность между начальнойвозвращает количество полных
всегда, пользователю следует есть, исключая выходные
Другие вычисления даты и времени
Разность между сегодняшней и другой датой
«=» котором вы планируете показывать 4 дняВ пока не получится вторая дата 10.01.2018 того что время лет расчетные операции. Посчитать можно воспользоваться функцией дате, т.д. ячеек – «Дата». В другой — полное диапазону праздничных дней и конечной датами. лет между двумя определиться с инструментом и праздничные. Для
. Кликаем по ячейке, производить вычисления. Кликаем феврале 4 рабочихDrem
Вычисление количества рабочих дней с учетом или без учета праздников
15:41 (Время действительного начало и концаПроиллюстрируем пример использования нескольких количество дней между ЧИСТРАБДНИ:Итак, посчитаем Иначе, функция работать
значение конечной даты в соответствии с Но вместо ввода датами. выполнения после того, этого используется функция в которой расположена правой кнопкой мыши дня?: Пробую и пробую окончания работы). Мне может попадать как параметров: двумя датами ExcelПрименяемая формула весьма проста.количество воскресений между датами не будет. и времени. В инструкциями раздела «Перед конкретной даты можноМожно также вычислить возраст как он поставил
1. Введите начальную и конечную даты.
ЧИСТРАБНИ более поздняя из по выделению. АктивируетсяСергей МытникSerge_007
2. Еще в одной ячейке введите формулу такого вида:
надо узнать время и на выходнойВнимание! Чтобы функция:=РАЗНДАТ() работала не составляет особых Функция ЧИСТРАБДНИ имеет вНажимаем на ячейку каждой ячейке необходимо
началом», введите в использовать в формуле или срок службы. конкретную задачу.. В отличие от двух дат (конечная). контекстное меню. В: По общему количеству: Ну если и просрочки данной задачи так и на без ошибок, следите проблем. Для наглядного два обязательных для
3. При необходимости измените параметр «1».
Excel A3. На закладке указать месяц, день, конце это имя, функцию Результат при этомАвтор: Максим Тютюшев предыдущего оператора, она Далее жмем на
нём выбираем пункт рабочих дней вопрос в третий раз в рабочих часах праздник, но мне за тем, чтобы
4. Введите имя диапазона праздничных дней.
примера сначала выполним заполнения аргумента:. Сделаем такую таблицу. «Формулы» в разделе год, час и как здесь. ЕслиСЕГОДНЯ() будет иметь следующийПримечание: присутствует в списке клавиатуре знак«Формат ячейки…» закрыт. Сейчас интересует не получится… (исключая выходные и нужны исключительно рабочие начальная дата была
сложение, а потомНачальная дата.День недели ставим числом «Библиотека функций» нажимаем минуту. у вас нет. При этом Excel вид: «2 года, Мы стараемся как можно Мастера функций. Синтаксис«-». Как вариант, можно общее количество прошедшихjiko праздники, столбец с часы, рабочий день старше конечной даты. вычитание дат. ДляКонечная дата.
Вычисление затраченного времени
от 1 – на функцию «ДатаВыберите обе ячейки и праздничных дней, можно в качестве даты 4 месяца, 5 оперативнее обеспечивать вас у этой функции. После этого выделяем набрать на клавиатуре рабочих дней с: все ок, друг
1. Введите начальное и конечное время.
датами праздников я с 9:00 доЦелью данного урока является этого:Если начальная дата записана понедельник, до 7 и время». Из нажмите клавиши CTRL+1
2. Задайте формат чч:мм.
оставить точку с берет текущую дату дней». актуальными справочными материалами следующий: ячейку, в которой сочетание клавиш начала месяца. по делу написал… добавил в файл). 18:00 + с
3. Вычислите разность двух значений времени.
пример математических операцийНа чистом листе в в ячейке A2, – воскресенье. появившегося списка выбираем
4. Задайте формат чч:мм.
(или запятой и не компьютера. Помните, чтоВ этом примере начальная на вашем языке.=ЧИСТРАБДНИ(нач_дата;кон_дата;[праздники]) содержится более ранняя
Вычисление затраченного времени между двумя датами и значениями времени
Ctrl+1Эта формула почему-тоформат ячейки - Считая что рабочий 13:00 до 14:00 с датами. Так ячейку А1 введите а конечная вМы, в примере,
1. Введите два полных значения даты и времени.
функцию «РАБДЕНЬ». Диалоговое+1 на компьютере указывать МоиПраздники. В она изменится, когда дата находится в Эта страница переведенаВ этой функции основные дата (начальная).. не работает.. В
2. Задайте формат 14.03.12 13:30.
(все форматы), а день c 9:00 обед). же, мы убедимся, текущею дату нажав B2, тогда функция поставили цифру 7 окно функции заполняем с Mac OS). Затем Excel 2007 формула из файл будет снова ячейке D17, а автоматически, поэтому ее аргументы, такие же,Чтобы увидеть, сколько времениОткрывается окно форматирования. Если ячейке никаких расчетов там уже :мм:сс до 18:00. ВПример: дата начала
3. Найдите разность двух значений.
что для Excel CTRL+;. возвращает количество только – воскресенье. В так. выберите примера выше примет открыт в другой конечная — в ячейке текст может содержать
4. Задайте формат [ч]:мм.
как и у прошло между этими открытие произошло не не происходит..Drem программе откуда идёт 26.12.2017 8:53:00 дата тип данных датаВ ячейке A2 введите
См. также
рабочих дней (без
ячейке D1 пишемНажимаем «ОК». Получилось так.
Дата
вид: день.
E17. Параметр неточности и грамматические
support.office.com
Как посчитать рабочие дни в Excel.
оператора датами, жмем на во вкладке=ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);СЕГОДНЯ()): Ура спасибо огромное выгрузка данных Срок окончания 12.01.2018 21:01:03 является числом. промежуточный период в суббот и воскресенья) такую формулу.К дате 12.02.2000 г. >=ЧИСТРАБДНИ(D53;E53;МоиПраздники)Заметьте, что во время»y»
ошибки. Для нас
РАЗНДАТ кнопку«Число»Sanja дело в формате окончания работы всегда
должно получится 64:00:00Заполните таблицу датами, так днях, например 127.
с учетом високосных=СУММПРОИЗВ(СУММЕСЛИ(C2;ДЕНЬНЕД(СТРОКА(ИНДЕКС(A:A;A$2):ИНДЕКС(B:B;B$2)) прибавили 28 рабочих14.03.12 13:30. создания записи дата в формуле возвращает
важно, чтобы эта– начальная иEnter, то следует в: ЦитатаСергей Мытник пишет: ячейки было
попадает в промежуток часа рабочего времени. как показано наВ ячейку A3 введите годов, в которых;2)))/C2 дней, и получилась. Этот образец датыСовет: была 6 октября
количество полных лет
статья была вам конечная дата. Кроме. Результат отобразится в неё перейти. В
которая бы рассчитывалаmvorg с 9:00 доПомогите пожалуйста. рисунке: формулу:=A1+A2. всего 366 дня.Внимание! дата 21.02.2000г. приведен для примера,Если вы не 2016 г. между двумя датами. полезна. Просим вас того, имеется необязательный ячейке, которая отформатирована
блоке параметров количество прошедших рабочих: Здравствуйте 18:00, проблемы могутТема размещенаРазные способы ввода дат.Обратите внимание, формат «Дата»Когда будем писатьЕсли нужно посчитать чтобы просто показать,
хотите ссылаться наВычислить количество рабочих днейВ еще одну ячейку уделить пару секунд аргумент под общий формат.«Числовые форматы» дней на сегодняшнийSerge_007
возникнуть с ВременемZ В столбце А автоматически присвоился дляГлавным недостатком данной формулы формулу, то нужно
с дополнительными праздничными как выглядит формат. имя диапазона праздников, между двумя датами поместите формулу РАЗНДАТ и сообщить, помогла«Праздники»
excel-office.ru
Посчитать количество дней недели между датами в Excel.
Для вычисления разности ввыставляем переключатель в деньисходил из этого, спасибо вам за действительного окончания работы,: Варианты — =ЧИСТРАБДНИ(;;) – способ ввода, ячейки A3. Не
является тот факт, обратить внимание, по днями, то запишем Учитывайте, что в также можно вводить
можно с помощью
с параметром ли она вам,. датах можно также позицию поста ТС данные сообщение, очень тут мы считаем =ЧИСТРАБДНИ.МЕЖД(;;1;) а в столбце
сложно догадаться, чтобы что она по какому принципу будут их в таблице. версиях, предшествующих Excel 2016, диапазона вместо, например функции ЧИСТРАБДНИ.МЕЖД. При»ym» с помощью кнопок
Вместо него следует подставлять применять специальную функцию«Дата»в феврале помогли с расчетом
так если время
laryboy
B – результат
посчитать разницу в умолчанию за выходные считаться дни недели. Официальные праздники считаются образец даты можетD35:E:39 этом можно также. Параметр «ym» возвращает внизу страницы. Для даты праздничных нерабочихРАЗНДАТ. В правой части=ЧИСТРАБДНИ(«01.02.2014»;СЕГОДНЯ())для любого текущего времени. попадает до 9:00: Дело в том,
отображения. датах в Excel считает только субботы
Например, понедельник – автоматически. Тогда диалоговое выглядеть иначе, например. Или введите каждого исключить выходные и количество месяцев, остающихся удобства также приводим дней, если таковые. Проблема в том,
окна выбираем тот месяца 2014 годаВозможно все также (например 8:31, 7:20 что так онОбратите внимание, что в нужно от новейшей
и воскресенья. Что это 1 или окно функции заполним 14.03. праздника внутри формулу. праздничные дни.
после последнего полного ссылку на оригинал имеются за охватываемый что в списке тип данных, с=ЧИСТРАБДНИ(«01.»&МЕСЯЦ(СЕГОДНЯ())&».2014″;СЕГОДНЯ()) оставить, или подскажите и т.д. то
считает не часы, формате ячеек по даты отнять старшую делать если у 2? Когда дописывали так.01 Например, если была
excel-office.ru
Расчет количества рабочих дней между двумя датами в Excel
Перед началом. года. (на английском языке). период. Функция производит Мастера функций её которым собираемся работать.Юрий М другую формулу что считаем что задача а рабочие дни. умолчанию «Общий», даты
Пример расчета количества рабочих дней без выходных
дату. В ячейке вашей фирмы выходными формулу, появилось такоеЯчейки с праздниками мы13:30. праздников 1 января
Решите, нужно лиТеперь нужно определить количествоС помощью функции РАЗНДАТ расчет всех дней
- нет, поэтому придется
- После этого, чтобы
: А как вам бы точно так была выполнена в А мне надо также как и B1 введите формулу:=A3-A1. считаются только воскресенья? окно. Мы выбрали записали как диапазонВ еще одной ячейке
и 2 2016,
исключить праздничные даты. оставшихся дней. Мы можно вычислить разность указанного диапазона, исключая вводить формулу вручную. закрепить изменения, жмем это?В ТЕКУЩЕМ МЕСЯЦЕ высчитывала но что 9:00 в первую именно часы. число выравниваются по Соответственно мы получаем Или же если второй порядок счета – через двоеточие. вычтите начальные дату
введите их следующим Если да, введите сделаем это, написав между двумя датами. субботы, воскресенья, а Её синтаксис выглядит на кнопку Я про бы в таблице рабочую минуту этогоZ правой стороне, а количество дней между вы работаете в дней недели. Два Нажимаем «ОК». Получилось
и время из образом: список праздничных дней другую формулу, чем Поместите начальную дату также те дни, следующим образом:«OK» стартовое сообщение…
не высвечивалась дата дня), если задача: Дни на часы текст по левой. этими двумя датами. сфере торговли у раза нажали мышкой
exceltable.com
Как вычислить дату в Excel
так. конечных даты и= ЧИСТРАБДНИ. Intl(D53,E53,1,{«1/1/2016″,»1/2/2016»}) в отдельной области приведенная выше. Эта в одну ячейку, которые добавлены пользователем=РАЗНДАТ(начальная_дата;конечная_дата;единица)
.=== а только время выполнена после 18:00 (8-и часовой РД) Значение в ячейке вас могут быть в этом окне.Вычесть рабочие дни из времени. Результат будет
Как в Excel посчитать дни между датами?
. В Excel 2007, или на отдельном формула вычитает первый а конечную — в в аргумент«Единица»Теперь все данные, которыеАвтору: моя формула оставалось? (например 18:01 23:12 умножить нет сил?!. B4 распознается программойТеперь мы научимся вычислять
- выходные другие дни, Цифра 2 появилась даты в Excel выглядеть как десятичное
- он будет выглядеть листе. Поместите каждую день конечного месяца
- другую. Затем введите«Праздники»
— это формат, будут содержаться в писалась под стартовоеЧитаем Правила форума, и т.д) ,laryboy как текст. возраст по дате например, пятницы и в формуле.. число со знаками следующим образом:
праздничную дату в
Вычисление возраста по дате рождения в Excel
(01.05.2016) из исходной формулу (см. одну.
- в котором в выделенных ячейках, программа сообщение, а Вы создаём свою тему.
- то считаем 18:00: а если время
- В ячейке B7 Excel рождения: субботы?Дописали формулу, нажали «Enter».Если нужно определить после запятой. Это=NETWORKDAYS(D53,E53,{«1/1/2016″,»1/2/2016»})
отдельную ячейку. Затем даты окончания в из формул ниже).Выделяем ячейку, в которой выделенную ячейку будет
будет распознавать как меняете правила игры… Эта тема закрыта (последнюю рабочую минуту, будет другое, мне сам присвоил текущийНа новый лист вДля вычислений данного типа Получилось пять воскресений рабочий день, отняв
будет исправлено вЧтобы вычислить затраченное время, выделите эти ячейки, ячейке E17 (06.05.2016).Предупреждение: будет находиться итог выводиться результат. От дату.JayBhagavanСергей Мытник
только этого рабочего нужно количество часов,
год (сейчас 2015-ый) | ячейки A1:A3 введите |
Excel предлагает функцию | в ноябре. |
28 дней назад, | следующем действии. |
нужно из одного | выберите |
Ниже описано, как | Если значение вычисления. Кликаем по |
того, какой символ | Проще всего вычислить разность: =ЧИСТРАБДНИ.МЕЖД(КОНМЕСЯЦА(СЕГОДНЯ();-1)+1;СЕГОДНЯ()) |
: Добрый день! | дня. по твоей схеме |
по умолчанию. Это даты: 18.04.1985; 17.08.1977;
ЧИСТРАБДНИ.МЕЖД. Данная функцияПоставим в ячейке С2 то в таблицеНажмите клавиши CTRL+1 (или значения времени вычесть
Ввод даты в ячейку Excel
Формулы это делается. Сначала,нач_дата кнопке будет подставлен в дней между датамиЮрий М
Как с помощьюDrem получится число кратное
видно при отображении 08.12.1992 обладает дополнительным важным цифру 6 – число запишем с+1 на компьютере
другое. Поместите начальное > функция ДАТА создаетбольше значения«Вставить функцию» данный параметр, зависит, с помощью обычной: И ещё для формулы можно в: Доброго времени суток
восьми, а мне содержимого ячеек вВ ячейки B1:B3 проставьте аргументом – «Выходные». посчитаем, сколько суббот минусом. Все остальное с Mac OS). Выберите время в однуПрисвоить имя дату, 01.05.2016. Она
Вычисление даты Excel
кон_дата. в каких единицах формулы. Сергея Мытника: привыкайте: ячейке указать количество всем! нужно точное количество строке формул. Обратите текущею дату.
Здесь следует указать в ноябре месяце делаем без изменений.(все форматы) ячейку, а конечное —. Присвойте диапазону имя делает это на
, возникнет ошибка #ЧИСЛО!Открывается Мастер функций. В будет возвращаться итог:Записываем в отдельные ячейкиодна тема — один рабочих дней вПодскажите пожалуйста возможно часов, если бы внимание, как изначальноТеперь нужно воспользоваться функцией один из кодов, 2015 года. Получилось
Число с минусом можно. В поле
в другую. ОбязательноМоиПраздники основе года и
В этом примере начальная категории«y» — полные года; отформатированного диапазона даты, вопро
exceltable.com
Расчёт рабочего времени между двумя датами.
текущем месяце? ли в excel было 26.12.2017 10:00:00
вводилось значение в по преобразованию количества который поддерживает данная четыре субботы. записать в таблице,Тип указывайте полное значениеи нажмите кнопку месяца в ячейке дата находится в«Полный алфавитный перечень»«m» — полные месяцы; разность между которымисJayBhagavan расчитать количество часов дата окончания 12.01.2018
A7. дней в количество функция (от 1Так можно посчитать любой установив в ячейке
введите
времени, включая часы
ОК E17 (число ячейке D9, а
или«d» — дни; нужно вычислить., а то и: между двумя датами 21:01:03 должно получиться
На чистом листе в лет. Для этого и до 15). день недели в
текстовый формат.[ч]:мм и минуты. Ниже. Затем создайте формулу,1 конечная — в ячейке«Дата и время»«YM» — разница вВыделяем ячейку, в которой возникают такие вотСергей Мытник и временем. 63 часа, а ячейки А1:B1 введите вручную введите в
Данный код определяет любом периоде дат.Как посчитать, сколько. это описано более выполнив указанные ниже
означает первый день E9. Формула помещенаищем элемент месяцах; будет выводиться результат.
«непонятки»., в зависимости какого01.01.2013 10:00 -
по твоим формулам 01.01.1900, а в диапазон C1:C3 следующее которые дни неделиМожно в Excel воскресений или суббот,Функция РАЗНДАТ подробно. действия. месяца). Функция ДАТА в ячейку F9.«ЧИСТРАБДНИ»«MD» — разница в В ней долженСергей Мытник года у Вас
02.01.2013 11:30 = будет 64 ячейках A2:B2 вводим значение: =РАЗНДАТ(A1;B1;»y»). должны быть восприняты
по дате определить или других днейЧИСТРАБДНИ. Функция МеждународныеВ этом примере начальноеВ этом примере начальная отображает 01.05.2016. Затем Параметр. Выделяем его и днях (месяцы и быть установлен общий: Ок, Юрий, замечание эксель… 25:30Z 01.01.1901. Теперь меняемТаким образом, применение функции как выходные и день недели. Смотрите недели в определенном ресурсы время находится в дата находится в мы вычитаем эту»d» жмем на кнопку годы не учитываются); формат. Последнее условие учту. Просто аппетитМатросНаЗебреSerge_007: Не я, а формат ячеек на позволило нам точно не учитываться при об этом в периоде дат, читайтеЧИСТРАБДНИ ячейке D80, а ячейке D53, а дату из исходнойвозвращает количество полных«OK»«YD» — разница в очень важно, так приходит во время: =ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())+1;1)-1)
planetaexcel.ru
Рассчитать количество часов между двумя датами?
: Вычтите из большеговы это написали, «числовой» в выделенном
вычислить возраст по вычислении формулы. статье «День недели в статье «ПосчитатьДополнительные функции даты
конечное — в ячейке конечная — в ячейке конечной даты в
дней между двумя. днях (годы не как, если в обедаСергей Мытник
меньшее, формат ячейкиоднако… диапазоне B1:B2. Для дате рождения вВ процессе введения функции
по дате в количество дней недели
и времени E80. Обязательно укажите E53.
ячейке E17, т. е. датами.Открывается окно аргументов функции. учитываются). этой ячейке стоит, ваша формула: У меня 2007. с формулой
Прикрепленные файлы 2018_Image_006_.png этого можно нажать
Excel. вручную в ячейку Excel» тут. между датами в
вычислять разницу между
полное значение времени,Введите формулу, как в
06.05.2016. «06.05.2016» минусВ этом примере начальная
Вводим в соответствующиеТак как нам нужно
формат даты, то работает, спасибо!
, спасибо, формула:мм (16.25 КБ) комбинацию клавиш CTRL+SHIFT+1.
Внимание! Чтобы перевести дни или в строку
Как посчитать только Excel» тут. двумя значениями времени включая часы и
приведенном выше примере. «01.05.2016» равняется 5 дата находится в
поля дату начала рассчитать разницу в в таком случае
, ваша формула работает! А еще, вот и всёlaryboy
B1 теперь содержит число в года не формул в момент рабочие дни междуКак узнать, какойРазберем, минуты.
Параметр «1» в дням. ячейке D13, а и конца периода, количестве дней между и результат будет выдает ошибку «Имя», тогда спрошу: подскажитеDrem
: для данного случия 1, а B2 достаточно формулы: =(B1-A1)/365.
excelworld.ru
Расчет количества рабочих дней в месяце
заполнения третьего аргумента датами, смотрите в
день недели приходитсякак посчитать рабочие дниВыберите обе даты и формуле назначает субботыПредупреждение:
конечная — в ячейке а также даты датами, то наиболее иметь вид возможно, она предназначена с формулой, которая
: Спасибо, только вот там и получится
– 367. То Более того даже
появится подсказка значения статье «Как посчитать на определенную дату, в Excel нажмите клавиши CTRL+1 и воскресенья выходными Не рекомендуется использовать аргумент
E13. Параметр «d» праздничных дней, если оптимальным решением будет«дд.мм.гг»
для более поздней
бы рассчитывала количество он выдает ответ
полных рабочих часов есть прошел один если мы знаем
кодов 1-15. Как
рабочие дни в смотрите в статьебез учета праздничных (или
днями и исключает «md» функции РАЗНДАТ, возвращает количество дней. таковые имеются. Жмем
применение последнего варианта.или другой, соответствующий версии экселя, чем прошедших рабочих дней либо 1:30, либо
64 високосный год (366
что 1 сутки показано ниже на
Excel». «День недели по
дней. Как определить,+1 на компьютере их из общей так как это
Но в конце на кнопкуТакже нужно обратить внимание, данному формату, что установлена у меня. на сегодняшний день. ;;##
laryboy дней) и 1 = 0,0027397260273973 года, рисунке:
Как посчитать количество
дате Excel» здесь. какой рабочий день
с Mac OS). Выберите суммы. может привести к формулы указано выражение«OK»
что, в отличие
является некорректным итогомВ любом случае,
Юрий М
Serge_007: для такого должно день. то формула:=(B1-A1)*0,0027397260273973 такПросто выберите соответствующий вашим
календарных дней с
О нескольких разных будет впереди, или форматПримечание. В Excel 2007
неправильным результатам вычисления./7
. от способа с расчетов. Текущий формат всем спасибо за: Я не формулист,: А если попробовать? получится 63Способ отображения даты можно же не даст
требованиям код и выходными, но без простых способах прибавить, был раньше через(все форматы)
нет функции ЧИСТРАБДНИ.МЕЖД.Все три вычисления можно
. Это выражение делитПосле указанных выше манипуляций применением простой формулы, ячейки или диапазона помощь!! конечно, но получилось
Или Вы думаетеZ задать с помощью
planetaexcel.ru
точного результата.
На чтение 10 мин. Просмотров 13k.
Содержание
- Получить дни, месяцы и годы между датами
- Подсчитайте дни недели между датами
- Подсчитывать праздники между двумя датами
- Создание диапазона дат с двух дат
- Получать рабочие часы между датами
- Получать рабочие часы между датами собственного расписания
- Получать рабочие дни между датами
- Список праздников между двумя датами
Получить дни, месяцы и годы между датами
= РАЗНДАТ (начало; конец; «г»)&»годы»; & РАЗНДАТ(начало; конец; «гм») & «месяцы»; & РАЗНДАТ(начало; конец; «мд») & «дни»
Чтобы рассчитать и отобразить время между датами в днях, месяцах и годах, вы можете использовать формулу, основанную на функции РАЗНДАТ.
В показанном примере формула в D5:
= РАЗНДАТ(B5; C5; «г») & «годы»; & РАЗНДАТ(B5; C5; «гм») & «месяцы»; & РАЗНДАТ(B5; C5; «мд») & «дни»
Где даты начала указаны в столбце B, а даты окончания — в столбце C.
Функция РАЗНДАТ предназначена для вычисления разницы между датами в годах, месяцах и днях. Доступны несколько вариантов (например, время в месяцах, время в месяцах без учета дней и лет и т. д.), И они устанавливаются аргументом «единица» в функции.
В показанном примере мы вычисляем отдельно годы, месяцы и дни, затем «склеиваем» результаты вместе с конкатенацией. Чтобы получить целые годы, мы используем:
РАЗНДАТ(B5; C5; «г») и «годы»
Чтобы получить целые месяцы, мы используем:
РАЗНДАТ(B5; C5; «гм») & «месяцы»
И мы вычисляем дни с:
РАЗНДАТ(B5; C5; «мд») & «дни»
Остальная часть формулы — это просто необходимый текст, объединенный с оператором конкатенации (&).
Чтобы предотвратить вывод дней, месяцев или лет с нулевыми значениями, вы можете обернуть каждую функцию РАЗНДАТ внутри ЕСЛИ, как показано здесь (строки, добавленные для удобочитаемости):
=ЕСЛИ(РАЗНДАТ(B5; C5; «г»); РАЗНДАТ (B5; C5; «г») & «годы»; «»)
ЕСЛИ(РАЗНДАТ(B5; C5; «гм»); РАЗНДАТ(B5; C5; «гм») & «месяцы»; «»)
ЕСЛИ(РАЗНДАТ(B5; C5; «мд»); РАЗНДАТ(B5; C5; «мд») & «дни»; «»)
Для предотвращения появления дополнительных запятых в конечном результате запятые заменяются пробелами. Использование исходной формулы РАЗНДАТ как «логического теста» внутри ЕСЛИ работает, потому что ЕСЛИ обрабатывает любой ненулевой результат как истинный.
Подсчитайте дни недели между датами
= СУММПРОИЗВ(- (ДЕНЬНЕД(СТРОКА(ДВССЫЛ (дата1 & «:» & дата2))) = дни))
Чтобы подсчитать количество понедельников, пятниц, воскресений и т. п. между двумя датами, вы можете использовать формулу массива, которая использует несколько функций: СУММПРОИЗВ, ДЕНЬНЕД, СТРОКА и ДВССЫЛ.
В показанном примере формула в ячейке E5 имеет следующий вид:
= СУММПРОИЗВ(- (ДЕНЬНЕД(СТРОКА(ДВССЫЛ(B5 & «:» & C5))) = D5))
В основном эта формула использует функцию ДЕНЬНЕД, чтобы проверить количество дат, чтобы увидеть, попадают ли они в заданный день недели и функцию СУММПРОИЗВ, чтобы подсчитать общее количество.
Когда дана дата, ДЕНЬНЕД просто возвращает число от 1 до 7, соответствующее конкретному дню недели. С настройками по умолчанию: 1 = воскресенье и 7 = суббота. Итак, 2 = понедельник, 6 = пятница и так далее.
Трюк этой формулы заключается в понимании того, что даты в Excel — это только серийные номера, которые начинаются 1 января 1900 года. Например, 1 января 2016 года — это серийный номер 42370, а 8 января — 42377. Даты в Excel выглядят только как даты, когда применяется формат числа даты.
Итак, возникает вопрос — как вы можете построить массив дат, который вы можете использовать в функции ДЕНЬНЕД, чтобы узнать соответствующие дни недели?
Ответ: использовать СТРОКА с ДВССЫЛ следующим образом:
СТРОКА(ДВССЫЛ(дата1 & «:» & дата2))
ДВССЫЛ позволяет связанным датам «42370: 42377» интерпретироваться как номера строк. Затем функция СТРОКА возвращает массив вроде этого:
{42370; 42371; 42372; 42373; 42374; 42375; 42376; 42377}
Функция ДЕНЬНЕД оценивает эти числа как даты и возвращает этот массив:
{6; 7; 1; 2; 3; 4; 5; 6}
Который тестируется на заданный день недели (6 в данном случае, начиная с D6). Как только результаты теста преобразуются в 1 и 0 с двойным дефисами, этот массив обрабатывается СУММПРОИЗВ:
{1; 0; 0; 0; 0; 0; 0; 1}
Который возвращает 2.
Подсчитывать праздники между двумя датами
= СУММПРОИЗВ((праздники> = начало) * (праздники <= конец))
Для подсчета праздничных дней, которые происходят между двумя датами, вы можете использовать функцию СУММПРОИЗВ.
В показанном примере формула в F7:
=СУММПРОИЗВ((B5:B13>=F5)*(B5:B13<=F6))
Эта формула использует два выражения в одном массиве внутри функции СУММПРОИЗВ.
Первое выражение проверяет каждую дату отпуска, чтобы увидеть, больше или равна дате начала в F5:
(B5: B13> = F5)
Это возвращает массив значений ИСТИНА/ЛОЖЬ, например:
{ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА }
Второе выражение проверяет каждую дату отпуска, чтобы увидеть, меньше или равна конечной дате в F6:
(B5: B13 <= F6)
Который возвращает массив значений ИСТИНА/ЛОЖЬ следующим образом:
{ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА; ЛОЖЬ}
Умножение этих двух массивов автоматически присваивает значения ИСТИНА/ЛОЖЬ единицам и нулям, что приводит к массивам, которые выглядят так:
= СУММПРОИЗВ(({0; 0; 0; 0; 1; 1; 1; 1; 1}) * ({1; 1; 1; 1; 1; 1; 1; 1; 0}))
После умножения у нас есть только один массив:
=СУММПРОИЗВ ({0; 0; 0; 0; 1; 1; 1; 1; 0}})
Наконец, СУММПРОИЗВ суммирует элементы в массиве и возвращает 4.
Для подсчета праздничных дней, которые происходят только в рабочие дни (понедельник-пятница), вы можете расширить формулу следующим образом:
=СУММПРОИЗВ ((диап> = F5) * (диап <= F6) * (ДЕНЬНЕД(диап; 2) <6))
Где диап — диапазон, содержащий даты отпуска.
Создание диапазона дат с двух дат
= ТЕКСТ(дата1; «формат») & «-» & ТЕКСТ (дата2; «формат»)
Чтобы отобразить диапазон дат в одной ячейке на основе дат в разных ячейках, вы можете использовать формулу, основанную на функции ТЕКСТ.
В показанном примере формула в ячейке E5:
= ТЕКСТ (B5; «ммм д») & «-» & ТЕКСТ(C5; «ммм д»)
Функция ТЕКСТ принимает числовые значения и преобразует их в текстовые значения, используя заданный вами формат. В этом примере мы используем формат «ммм д» для обеих функций TEКСT в E5. Результаты объединяются дефисом, используя простую конкатенацию.
Примечание. Другие примеры в столбце E используют разные текстовые форматы.
Если дата окончания отсутствует, формула не будет работать правильно, потому что дефис будет добавлен к дате начала (например, «1 марта»).
Чтобы обработать этот случай, вы можете обернуть конкатенацию и вторую функцию ТЕКСТ внутри ЕСЛИ следующим образом:
= ТЕКСТ(дата1; «ммм д») & ЕСЛИ(дата2 <> «»; «-» &ТЕКСТ(дата2; «ммм д»); «»)
Это создает полный диапазон дат, когда обе даты присутствуют, но выводит только дату начала, когда дата окончания отсутствует.
Для обработки случая, когда обе даты отсутствуют, вы можете вложить еще один ЕСЛИ следующим образом:
= ЕСЛИ(дата1 <> «»; ТЕКСТ(дата1; «мммм д») & ЕСЛИ(дата2 <> «»; «-» & ТЕКСТ(дата2; «ммм д»); «»); «»)
Эта формула просто возвращает пустую строку («»), когда дата1 недоступна.
Получать рабочие часы между датами
= ЧИСТРАБДНИ (начало; конец; праздники) * часы
Чтобы получить общее количество часов работы между двумя датами, вы можете использовать формулу, основанную на функции ЧИСТРАБДНИ, где «начало» — это дата начала, «конец» — конечная дата, «праздники» — диапазон, который включает в себя даты отпуска , А «часы» — количество рабочих часов в день.
В показанном примере формула в D5:
=ЧИСТРАБДНИ(B5;C5)*8
Эта формула использует функцию ЧИСТРАБДНИ, чтобы выполнить работу по определению общего количества рабочих дней между двумя датами с учетом выходных и (необязательно) праздников.
Праздники, если они предусмотрены, должны быть диапазоном, который включает действительные даты Excel.
Как только общие рабочие дни известны, их просто умножают на количество часов в рабочем дне.
Обратите внимание, что ЧИСТРАБДНИ по дизайну включает как дату начала, так и дату окончания в результате, и исключает как субботу, так и воскресенье.
Получать рабочие часы между датами собственного расписания
{= СУММ(ВЫБОР(ДЕНЬНЕД(СТРОКА(ДВССЫЛ(дата1 & «:» & дата2))); 1;2;3;4;5;6;7))}
Чтобы вычислить часы работы между двумя датами с настраиваемым расписанием, вы можете использовать формулу, основанную на функциях ДЕНЬНЕД и ВЫБОР.
В показанном примере формула в F5:
=СУММ(ВЫБОР(ДЕНЬНЕД(СТРОКА(ДВССЫЛ(B5&»:»&C5)));0;8;4;8;4;8;0))
Который возвращает 32 часа, основанный на пользовательском расписании, где 8 часов работают в Пн, Ср и Пт, а 4 часа — в Пт и Вт.
Примечание. Это формула массива, которая должна вводиться с помощью Control + Shift + Enter.
По сути, эта формула использует функцию ДЕНЬНЕД для определения дня недели (например, понедельник, вторник и т. д.) Для каждого дня между двумя указанными датами.
ДЕНЬНЕД возвращает число от 1 до 7, соответствующее конкретному дню недели. С настройками по умолчанию: 1 = воскресенье и 7 = суббота, поэтому, 2 = понедельник, 6 = пятница и так далее.
Хитрость этой формулы заключается в создании массива дат, которые вы можете использовать в функции ДЕНЬНЕД. Это делается с помощью СТРОКА с ДВССЫЛ следующим образом:
СТРОКА(ДВССЫЛ(дата1 & «:» & дата2))
ДВССЫЛ позволяет связанным датам «» 42464: 42470 «» интерпретироваться как номера строк. Затем функция СТРОКА возвращает массив вроде этого:
{42464; 42465; 42466; 42467; 42468; 42469; 42470}
Функция ДЕНЬНЕД оценивает эти числа как даты и возвращает этот массив:
{2; 3; 4; 5; 6; 7; 1}
Эти числа соответствуют дню недели каждой даты.
Этот массив затем передается функции ВЫБОР в качестве «номера индекса», который был сконфигурирован с 7 значениями:
Значение1 – рабочие дни в воскресенье
Значение 2 — рабочие часы в понедельник
Значение 3 — рабочие часы вторника
Значение 4 — Рабочие часы в среду
Значение 5 — рабочие часы в четверг
Значение 6 — рабочие часы в пятницу
Значение 7 — работа в субботу
Поскольку мы даем ВЫБОР более чем одно значение индекса, он возвращает более одного результата в массиве следующим образом:
{8; 4; 8; 4; 8; 0; 0}
Эти цифры соответствуют часам, которые выполнялись каждый день с даты 1 по дату2.
Наконец, чтобы получить итоговое значение, нам просто нужно обернуть ВЫБОР в СУММ и ввести формулу массива.
В этом примере итоговый результат составляет 32 часа.
Примечание: вы могли бы подумать, что вы могли бы использовать СУММПРОИЗВ вместо СУММ, чтобы избежать синтаксиса массива, но он не работает; Вам все равно придется использовать CSE. Я знаю, что причина заключается в использовании ДВССЫЛ с СТРОКА для построения массива значений индекса, но не знаю, почему это требует CSE.
Получать рабочие дни между датами
= ЧИСТРАБДНИ(нач_дата; кон_дата; праздники)
Чтобы вычислить количество рабочих дней между двумя датами, вы можете использовать функцию ЧИСТРАБДНИ. ЧИСТРАБДНИ автоматически исключает выходные и может также исключать настраиваемый список праздничных дней.
Например, если у вас есть дата 4 января 2016 года (понедельник) в ячейке B4 и 11 января 2016 года (также понедельник) в ячейке C4, эта формула вернет 6:
= ЧИСТРАБДНИ(B4; C4)
Обратите внимание, что ЧИСТРАБДНИ включает как начальную, так и конечную даты в расчете, если они являются рабочими днями.
ЧИСТРАБДНИ также может исключать настраиваемый список праздников. Например, если у вас есть даты отпуска в H1: H10, вы можете указать ЧИСТРАБДНИ не включать эти даты в качестве рабочих дней, добавив этот диапазон в качестве третьего аргумента в формуле:
= ЧИСТРАБДНИ(B4; C4; H1: H10)
Если вам нужно учитывать пользовательские выходные дни (например, выходные — это только суббота, воскресенье и понедельник и т. д.), Вам нужно переключиться на более надежную функцию ЧИСТРАБДНИ.МЕЖД, которая позволяет вам установить, какие дни недели считаются выходными, подавая аргумент в выходные дни в виде числового кода.
Список праздников между двумя датами
{= ОБЪЕДИНИТЬ («;»; ИСТИНА; ЕСЛИ(даты> = старт; ЕСЛИ(даты <= конец; праздники; «»); «»))}
Для отображения праздников, которые происходят между двумя датами, вы можете использовать формулу, основанную на функциях ОБЪЕДИНИТЬ и ЕСЛИ.
В показанном примере формула в F8:
{= ОБЪЕДИНИТЬ(«;»; ИСТИНА; ЕСЛИ(B4: B12> = F5; ЕСЛИ(B4: B12 <= F6; C4: C12; «»); «»))}
Это формула массива и должна вводиться control + shift + enter.
На высоком уровне эта формула использует вложенную функцию ЕСЛИ для возвращения массива праздников между двумя датами. Затем этот массив обрабатывается функцией ОБЪЕДИНИТЬ, которая преобразует массив в текст, используя запятую в качестве разделителя.
Работая изнутри, мы генерируем массив совпадений праздников, используя вложенный ЕСЛИ:
ЕСЛИ(B4: B12> = F5; ЕСЛИ(B4: B12 <= F6; C4: C12; «»); «»)
Если даты в B4: B12 больше или равны начальной дате в F5, и если даты в B4: B12 меньше или равны конечной дате в F6, тогда ЕСЛИ возвращает массив праздничных дней. В показанном примере список выглядит так:
{«»; «»; «День президента»; «День памяти»; «»; «»; «»; «»; «»}
Этот массив затем доставляется в функцию ОБЪЕДИНИТЬ в качестве аргумента текст1, где разделитель имеет значение «,», а игнорировать_пустые — ИСТИНА. Функция ОБЪЕДИНИТЬ обрабатывает элементы в массиве и возвращает строку, где каждый непустой элемент разделяется запятой и пробелом.
Примечание. Функция ОБЪЕДИНИТЬ является новой в Excel 2016.