Во-первых, вы должны знать/понимать, что любое число является потенциальной даты/времени для Excel и Excel знает только datetime
(и не дату и время отдельно).
Вот почему: что-либо перед запятой-заполнителем - это дни с 31 декабря 1899 года. Таким образом, число 42 000,00 также является датой. Это 42 000-й день после 31 декабря 1899 года, который составляет 27 декабря 2014 года.
Все, что после десятичного знака считается частью дня. Таким образом, значение 0,5 составляет полдня и, следовательно, время 12 часов, а 0,75 равно 6 днем (вторая половина дня).
Следовательно, все даты, которые вы показываете в приведенных выше примерах, могут также иметь время, связанное с ними, и все время, которое вы показываете, также может иметь связанную с ними дату. Просто измените формат чисел на всех этих ячейках на общие номера, и вы должны увидеть только Integer
значений для дат (без каких-либо знаков после запятой), а все время должно содержать только часть из 1 и все должны иметь 0 перед десятичной точкой -placeholder.
Если это не так, то вы только что нашли своего виновника.
С вышеуказанными знаниями также легко рассчитать разницу между двумя датами или временем. Разница заключается в простом сложении или вычитании: 42 000,00 + 100 + 0,5 = 100 дней после 27 декабря 2014 года в 12:00 = 6 апреля 2015 года в полдень. Таким образом, вы можете просто добавить числа и вычесть их, как вы это делали. Если вы хотите вычесть два дня на счет на выходные, вы можете просто вычесть 2.
Теперь давайте посмотрим на ваш пример: 23 июня 2016 года конвертируется в 42,544, в то время как 07:41 утром преобразует до 0,32. Итак, у нас есть 42 544,32, тогда как окончание datetime
преобразуется в 42,545.47.
Разница рассчитывается правильно как 1.15. Это означает, что существует разница в один день и доля дня 0,15 * 24 (часы в день) = 3 часа и 36 минут.
Я думаю, что реальная проблема, с которой вы сталкиваетесь, - правильно показать результат. Если вы укажете его как дату, то через один день после 31 декабря 1899 года = 1 января 1900 года. Если вы покажете результат как время, тогда вы увидите только 03:36:00. Лучше всего, чтобы показать разницу как число только как 1.15. Если вы хотите увидеть результат по-другому, вам придется настроить полученный вид на ваши нужды. Например: = 1.15 * 24 = 27,6 часов разница между датой начала/временем и датой окончания/временем.
Дайте мне знать, если у вас есть дополнительные вопросы.
Когда я использовал ** '6/30/2016' ** как' End Date' и ** '7: 41: 44 AM' ** как' End Time', я получаю правильное значение ** ' 168: 00: 00' **. Что вы ожидаете? – ManishChristian
Значение в E1 верное. Я предполагаю, что я должен был выбрать другой набор данных ... Я обновляюсь с другой картиной во второй @ManishChristian – ryan
На самом деле я не самый яркий ... Этот вопрос был просто результатом моего отсутствия умственных умственных способностей и часов через неделю ......... чувствую себя немым прямо сейчас -___- – ryan