Формула Excel: Отримати робочий час між датами -

Зміст

Загальна формула

=NETWORKDAYS(start,end,holidays)*hours

Резюме

Щоб розрахувати загальну кількість робочих годин між двома датами, ви можете використовувати формулу, засновану на функції NETWORKDAYS, де "початок" - це дата початку, "кінець" - дата закінчення, "канікули" - діапазон, що включає дати, а "години" - це кількість робочих годин у робочому дні. У наведеному прикладі формула в D7 має вигляд:

=NETWORKDAYS(B7,C7,holidays)*8

де "канікули" - це названий діапазон G6: G8.

Пояснення

Ця формула використовує функцію NETWORKDAYS для обчислення загальної кількості робочих днів між двома датами, враховуючи вихідні та (необов’язково) святкові дні. Канікули, якщо вони передбачені, повинні бути діапазоном дійсних дат Excel. Коли відомі загальні робочі дні, їх просто помножують на фіксовану кількість годин на день, 8 у наведеному прикладі.

Функція NETWORKDAYS включає як дату початку, так і кінець у розрахунку, а за замовчуванням виключає як суботу, так і неділю. Функція також виключає святкові дні, коли вони надаються як аргумент "канікули" як діапазон дійсних дат.

У наведеному прикладі перші дві формули використовують функцію NETWORKDAYS.

D6=NETWORKDAYS(B6,C6)*8 // no holidays D7=NETWORKDAYS(B7,C7,holidays)*8 // holidays provided

Якщо ваш робочий тиждень включає дні, крім понеділка по п’ятницю, ви можете переключитися на функцію NETWORKDAYS.INTL, яка надає аргумент "вихідні", який можна використовувати для визначення днів тижня, які є робочими і вихідними. NETWORKDAYS.INTL можна налаштувати так само, як і NETWORKDAYS, але він надає додатковий аргумент під назвою "вихідні", щоб контролювати, які дні в тижні вважаються робочими днями.

Наступні 4 формули використовують функцію NETWORKDAYS.INTL:

D8=NETWORKDAYS.INTL(B8,C8)*8 // Mon-Fri, no holidays D9=NETWORKDAYS.INTL(B9,C9,11)*8 // Mon-Sat, no holidays D10=NETWORKDAYS.INTL(B10,C10)*8 // M-F, no holidays D11=NETWORKDAYS.INTL(B11,C11,1,holidays)*8 // M-F, w/ holidays

Клацніть на назви функцій вище, щоб дізнатись більше про параметри конфігурації.

Індивідуальний графік роботи

Ця формула передбачає, що всі робочі дні мають однакову кількість робочих годин. Якщо вам потрібно розрахувати робочий час за спеціальним графіком, де робочий час змінюється залежно від дня тижня, ви можете спробувати формулу, подібну до цієї:

=SUMPRODUCT(MID(schedule,WEEKDAY(ROW(INDIRECT(start&":"&end))),1)*ISNA(MATCH(ROW(INDIRECT(start&":"&end)),holidays,0)))

Пояснення можна знайти тут.

Цікаві статті...