2016-04-20 4 views
1

У меня есть ячейка, которая просто выглядит как 4:11 PM. Вот формула, которая его вычисляет:Рассчитать разницу во времени между NOW() и рассчитанным временем

[Time In]+((TIME(8,0,0)-(K11/24))+([Lunch End]-[Lunch Start])) 

Могу вдаваться в это более подробно, но, надеюсь, это необязательно.

Теперь, что я хочу сделать, это показать, что по сути является обратным отсчетом, разница между NOW() и 4:11 PM. Вот ближайший я пришел:

=HOUR(NOW())-HOUR(Table1[@[Leave At]])&":"&TEXT(MINUTE(NOW())-MINUTE(Table1[@[Leave At]]),"00")

Это было верно до минуты не прошло минуты сравнения, то он начал считать обратно (IE в 2:05 он сказал 2:06 слева, но как только это было 2:25 он сказал, что осталось 2:14). Извините, если это не ясно.

Одна из проблем заключается в том, что если я попробую TIMEVALUE(L12) (L12 is 4:11 PM), я получаю #VALUE!. Я предполагаю, что это не работает, и почему просто делать =L12-NOW() не получилось.

Как я могу это решить?

+1

Попробуйте это '= L12-TIME (HOUR (NOW()), MINUTE (NOW()), 0)'. –

+0

Пока это выглядит точным! Пожалуйста, опубликуйте как ответ, и я соглашусь после того, как я уверена :) –

+0

Будьте уверены, что теперь вычисляется только тогда, когда рабочий лист вычисляет. Это означает, что если у вас есть автоматические обновления, это изменит все значения, введенные в ячейку. однако в тот момент, когда вы перестанете вводить элементы, электронная таблица перестанет вычисляться, поэтому вы не получите НЕПРЕРЫВНОЕ резервное копирование в реальном времени. Вы можете смотреть на свой рабочий лист весь день, и ничего не произойдет. (Если у вас нет другого кода где-то, что заставляет его пересчитывать) –

ответ

1

Проблема: NOW() - ДАТА/ВРЕМЯ, поэтому числовое значение -> 42000. Палочка при вычитании его из времени, которое < 0 вы получите отрицательное число, так NOW() должен быть изменен только его дробной части:

=L12-TIME(HOUR(NOW()),MINUTE(NOW()),0) 

Или

=L12-(NOW()-INT(NOW())) 

Второй вернется секунд с выходом.

Смежные вопросы