гугл таблица почему-то не всегда может применить функцию ЧАС() к высчитанному времени

В столбце F формула скопирована во все ячейки. Однако в строке 3 результат высчитывается, а два других примера - нет. Не понимаю, в чём может быть ошибка.

P.S.: Все данные вводятся в одинаковом временном формате. Если в столбец F ввести время вручную, всё работает. Если время в столбце F меняет формат, то я не знаю, как это выяснить, или, тем более, исправить(

введите сюда описание изображения

введите сюда описание изображения


Ответы (1 шт):

Автор решения: JohnSUN

Используйте в колонке D формулу такого вида

=C2-B2+(B2>C2)

Добавка +(B2>C2) будет иметь значение 0 в случае, если время начала периода и время окончания находятся в одном дне. Если период проходит через полночь, то эта добавка получит значение 1 (или 24 часа).

Это не надёжный приём! Если работа начата, например, в 18:00, а закончена в 18:15 на следующий день, то формула вернёт не 24:15, а только пятнадцать минут.

Чтобы избежать таких ошибок, лучше не разделять дату и время по отдельным ячейкам (как это было сделано в таблице на скриншоте). Если бы в ячейках находились значения вида 24.11.2021 15:00 и 25.11.2021 1:05, то обычное вычитание без всяких "добавок" возвращало бы правильный результат 10:05:00

Кроме того, совсем не обязательно использовать ЧАС() и МИНУТЫ(), чтобы получить время в виде десятичного числа - просто умножьте время на 24 (=F2*24) и отформатируйте как число.

→ Ссылка