Я хочу рассчитать количество часов и минут из заданной текстовой строки. В настоящее время я создал формулу ниже, используя некоторые встроенные функции Excel,
Пример текстовой строки:
7.00pm to 8.00pm or 9.00am to 11.45pm or 1.20pm to 3.40pm
Формула создана-
=CONCATENATE(REPLACE(SUM(NUMBERVALUE(REPLACE(RIGHT(A1,LEN(A1)-11),5,2,""))-NUMBERVALUE(REPLACE(A1,5,100,""))),2,3," Hour")," ",CONCATENATE(RIGHT(SUM(NUMBERVALUE(REPLACE(RIGHT(A1,LEN(A1)-11),5,2,""))-NUMBERVALUE(REPLACE(A1,5,100,""))),1)*10, " Minutes"))
Вышеупомянутая формула получает числовое значение из заданной строки и затем вычисляет разницу, после этого она отделяет значение и затем объединяется с заданным текстом.
Это работает со строкой вроде
7.00pm to 9.40pm
Выход:
2 Hour 40 Minutes
Но я думаю, что мой подход - не лучший способ, и он также не будет работать, когда время с утра до вечера означает «с 9:00 до 13:00». Есть ли другой способ, с помощью которого можно рассчитать разницу в часах. Или мы можем доработать эту формулу ...
Пожалуйста, дайте мне знать, если потребуется дополнительная информация по этому запросу
это не системное время, на самом деле лист Excel заполняется вручную разными людьми ежедневно, и при вводе данных они используют . для дифференциации часов и мин.


Время принадлежит как время. Следующая формула устраняет все ошибки, допущенные при вводе, и вычисляет истинное значение времени.
=TIMEVALUE(RIGHT(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, ".", ":"), "am", " am"), "pm", " pm"), 8))-TIMEVALUE(LEFT(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, ".", ":"), "am", " am"), "pm", " pm"), 8))
Задайте ячейке собственный числовой формат,
h \hou\r\s \a\n\d m \mi\nut\e\s_)
Формат не меняет того факта, что у вас есть исходное базовое значение, которое можно использовать в будущих вычислениях.
Спасибо, ваш подход очень крут, я не знал о SUBSTITUTE и TIMEVALUE
Действительно ли ваше системное время использует
.вместо:?