Отображаемое значение в A1 составляет 177:53:00

Пользовательский формат [ч]: мм: сс

Значение, когда я нажимаю A1, равно 1900-01-07 9:53:00 AM

Мне нужно извлечь часы (177) из клетки в другую камеру

Не могу найти формулу для этого.

Спасибо!

4 ответа4

1

Просто используйте = INT(A1 * 24).

Excel хранит даты и время внутри, в днях. Умножение на 24 дает вам часы, а INT обрезает минуты и секунды.

1

Как правильно указал Акина, из-за неточностей, присущих числам с плавающей запятой, которые Excel использует для хранения значения серийной даты, функция INT() не будет работать правильно, чтобы извлечь часы после умножения их на 24 .

Тем не менее, эта функция может быть использована для извлечения количества дней, и в сочетании с функцией HOUR() , который делает правильно извлекать количество часов из дробной части последовательного значения даты, мы получаем следующую формулу:

=HOUR(A1)+INT(A1)*24

Как пояснил Аганью, целочисленная часть значения серийной даты представляет дни, поэтому умножение ее на 24 даст количество часов значения серийной даты за целые дни. Добавление количества часов из-за неполного дня дает нам общее количество часов.

0
=LEFT(TEXT(A1,"[h]:mm:ss"),FIND(":",TEXT(A1,"[h]:mm:ss"))-1)
0

Вернулся к нему через некоторое время. После ответа @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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .