Я рассчитываю разницу между двумя днями, кроме выходных, но в результате я получаю на 9 часов меньше. В моем проекте они рассчитываются по степени серьезности, поэтому я включаю команду IF в приведенную ниже формулу.

Я использую следующую формулу:

=IF(B30<3,E30,((NETWORKDAYS(C30,D30)-1-MOD(C30,1)+MOD(D30,1))*24))

Я использую приведенную выше формулу для примера ниже, но я не получаю правильный ответ.

B30 (серьезность = 3)

C30 (Opentime = 4/10/2013 3:04)

D30 (закрытое время = 14.04.2013 15:41)

E30 (общее время, включая выходные = 108,6141)

Правильный ответ:

68,96 часа

Здесь C30 - время начала, а D30 - время закрытия. Я получаю 60,61 часа, но правильный ответ - 68,96 часа.

Билет открывается 10 апреля в 3:04 и закрывается 14 апреля в 15:41. Здесь рабочие дни - 10,11 и 12 апреля, и если мы рассчитаем их вручную, то получится так:

(Поскольку открытое время 3:04 утра, поэтому у нас в руках 20:96 с 24 часов)

20:96 в течение 10 апреля + 24 часа в течение 11 апреля + 24 часа в течение 12 апреля = 68,96 часа, но я получаю только 60,61 часа по вышеуказанной формуле.

Пожалуйста, помогите мне в этом.

1 ответ1

0

Ваша формула гарантированно будет работать правильно только в том случае, если время начала и окончания всегда находится в пределах рабочего времени - поскольку ваша дата окончания - воскресенье, вы получаете неверный результат, попробуйте эту формулу, чтобы справиться с любыми датами начала / окончания

=IF(B30<3,E30,(NETWORKDAYS(C30,D30)-NETWORKDAYS(C30,C30)*MOD(C30,1)+ NETWORKDAYS(D30,D30)*(MOD(D30,1)))*24)

Примечание: правильный ответ - 68,933, потому что 56 минут - это 0,933 часа (приблизительно).....

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .