Отображаемое значение в A1 составляет 177:53:00
Пользовательский формат [ч]: мм: сс
Значение, когда я нажимаю A1, равно 1900-01-07 9:53:00 AM
Мне нужно извлечь часы (177) из клетки в другую камеру
Не могу найти формулу для этого.
Спасибо!
Отображаемое значение в A1 составляет 177:53:00
Пользовательский формат [ч]: мм: сс
Значение, когда я нажимаю A1, равно 1900-01-07 9:53:00 AM
Мне нужно извлечь часы (177) из клетки в другую камеру
Не могу найти формулу для этого.
Спасибо!
Просто используйте = INT(A1 * 24).
Excel хранит даты и время внутри, в днях. Умножение на 24 дает вам часы, а INT обрезает минуты и секунды.
Как правильно указал Акина, из-за неточностей, присущих числам с плавающей запятой, которые Excel использует для хранения значения серийной даты, функция INT()
не будет работать правильно, чтобы извлечь часы после умножения их на 24
.
Тем не менее, эта функция может быть использована для извлечения количества дней, и в сочетании с функцией HOUR()
, который делает правильно извлекать количество часов из дробной части последовательного значения даты, мы получаем следующую формулу:
=HOUR(A1)+INT(A1)*24
Как пояснил Аганью, целочисленная часть значения серийной даты представляет дни, поэтому умножение ее на 24
даст количество часов значения серийной даты за целые дни. Добавление количества часов из-за неполного дня дает нам общее количество часов.
=LEFT(TEXT(A1,"[h]:mm:ss"),FIND(":",TEXT(A1,"[h]:mm:ss"))-1)
Вернулся к нему через некоторое время. После ответа @Akina моя окончательная формула
= INT(ВЛЕВО (ТЕКСТ (А1, "[ч]: мм: сс"), НАЙТИ (":", ТЕКСТ (А1, "[ч]: мм: сс")) - 1)) + (INT(MID (ТЕКСТ (А1, "[ч]: мм: сс"), FIND (":", TEXT (A1, "[ч]: мм: сс")) + 1,2))/60)
1900-01-07 9:53:00 AM
Который отображается как
177:53:00
возвращается как
177,88