Просто используйте = INT (A1 * 24).
Excel хранит даты и время внутри, в днях . Умножение на 24 дает вам часы, а INT обрезает минуты и секунды.
Отображаемое значение в 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