Предпросмотр#
Иногда необходимо вычислить количество рабочих дней между датой начала и датой окончания.
Способ реализации#
Количество рабочих дней между двумя датами вычисляется через вычитание соответствующих маркированных чисел для этих дат.
Порядок действий#
Обработка таблицы дат#
- Формат содержимого таблицы дат показан на рисунке ниже.
Если ваши праздники/выходные отличаются от примера, вы можете изменить таблицу под себя.
- Создайте рабочую книгу и загрузите таблицу дат и переименуйте её в Таблица с метками нерабочих дней.
- Добавьте формульный столбец для маркировки: для праздничных дней ставьте 0, для рабочих — 1.
- Добавьте Сумма для накопления значений поля Маркировка 0/1 в порядке возрастания по дате.
В результате появится поле Номер марки, с помощью которого можно вычислять количество рабочих дней.
Пример: чтобы узнать количество рабочих дней между 2011/03/14 и 2011/03/08, вычтите соответствующие отмеченные числа и прибавьте 1: (45 - 41) + 1 = 5 дней.
Особый случай: если начальная дата — праздник, достаточно просто вычесть номера: 42 - 39 = 3 дня.
Подсчёт количества рабочих дней#
Загрузите Таблицу персонала, выберите все поля по умолчанию.
Нажмите + > Соединить. В Таблице с метками праздников выберите поля Date, Holiday or not, Номер марки и выберите в качестве основания объединения Start Time и Date.
Так вы соотнесёте дату начала с помеченным номером и определите, праздничная ли это дата.
- В прараметрах полей переименуйте Номер марки в Номер отметки даты начала, а поле Holiday or not — в Является ли дата начала праздником.
- Ещё раз выполните соединение. В Таблице с метками праздников выберите Date и Номер макрки и объединяйте с полем End time в таблице персонала.
Таким образом вы сопоставите конечную дату с номером отметки.
В настройках полей переименуйте Номер марки во втором случае в Номер отметки даты окончания.
Добавьте Формулу для расчёта числа рабочих дней между Start Time и End Time:
Если Start Time — праздник, используйте формулу:
IF(“Является ли дата начала праздником”="Праздник", Номер отметки даты окончания - Номер отметки даты начала, Номер отметки даты окончания - Номер отметки даты начала + 1)
Нажмите Сохранить.
Демонстрация#
Результат показан на рисунке ниже. Например, Джеймс работал 43 дня с 04.07.2016 по 31.08.2016.