Как можно сделать 23:59> 0:00 (= "23:59" + "0:01")? - PullRequest
1 голос
/ 24 января 2020

Я пытаюсь создать лист учета рабочего времени для рабочей смены в течение дня с ограниченным диапазоном времени для регистрации. Проблема в том, что 23:59 меньше 23: 59 + 0: 01 (что равно 0:00). Как сделать так, чтобы в ячейке было значение 0:00, которое меньше 23: 59?

Спасибо

1 Ответ

2 голосов
/ 24 января 2020

TODAY() вернет целое число, например 43854, что означает 43854-й день с 1 января 1900 года. NOW() вернет число, подобное 43854.48, которое идентифицирует тот же день плюс 0,48, что означает, что прошло почти полдня, то есть почти 12 полдень. По мере продвижения дня десятичное число будет расти до тех пор, пока в полночь NOW() не станет 43855.

Обратите внимание, что Excel будет применять формат даты или времени или дату / время к ячейке, в которой вы ввели формулу. Но если вы измените формат на Число , вы увидите фактическое значение ячейки. Обратите внимание, что «значение ячейки» и отображение ячейки различны. Вы можете ввести =NOW() в ячейку и применить формат, например hh:mm. Это скрыло бы всю информацию о дате.

Таким образом, вы можете ввести =TODAY() + Time(23,59,0) в ячейку A1 и применить формат «дд-мм-гг-чч: мм», чтобы увидеть 24-01- 20 23: 59 . Затем в B1 вы вводите =A1+Time(0,1,0). Используя тот же формат ячеек, вы увидите 25-01-20 00: 00 .

Теперь, если вы примените формат ячейки "чч: мм" к обеим ячейкам, которые вы увидите 23: 59 и 00: 00 , но если вы запросите результат в C1 = B1>A1, результат будет True , потому что, конечно, значение в B1 больше, чем в A1 на 1 минуту.

Итак, вы решаете свою проблему, вводя правильные значения TimeValues, которые включают дату, и форматируйте свои ячейки для отображения того, что вы хотите.

...