Как конвертировать Unix Timestamp в удобочитаемое человеком?


15

Как видно из заголовка, у меня есть Unix Timestamp на листе, и мне нужно преобразовать их в обычные удобочитаемые даты. Пока что я вычеркнул, поиски в Google нашли несколько предложений, но ни одно из них не сработало для меня вообще. У кого-нибудь есть формула, которая работает для их преобразования?

Ответы:


23

Я предпочитаю более прозрачную формулу с меньшим количеством магических чисел. Это позволяет легче увидеть, что происходит, а также исключает вероятность появления ошибки (например, текущий топ-ответ на этот вопрос, который отключен на 1 день):

=A1/60/60/24 + DATE(1970,1,1)

И если вы хотите перевести его из UTC в метку времени, которая смещена на некоторое количество часов, например, UTC-8:

=A1/60/60/24 + DATE(1970,1,1) - 8/24

Очень хорошо, я думаю, что это на самом деле лучший ответ, поэтому я собираюсь, кроме этого ... Спасибо!
JVC

Да, это не работает для меня, это выводит какую-то странную дату. Есть идеи почему?
JayPex

@JayPex Не знаю, но, может быть, если бы вы дали более подробную информацию. Одна вещь, чтобы проверить, будет формат для этой ячейки.
Дейв Л.

8

Google Sheets измеряет дату и время в днях, с отметкой 0, равной 1899-12-30 0:00:00. Это происходит до 1970 года, отметка времени Unix на данный момент (при условии времени по Гринвичу) является отрицательной, а именно -2209161600. Итак, формула

=(A1 + 2209161600)/86400

преобразует метку времени Unix в ячейке A1 в дату-время (отформатируйте ячейку с формулой как таковой).

Ограничения:

  • Високосные секунды игнорируются
  • Формула для GMT, а время в Google Sheets указано в местном часовом поясе. Чтобы изменить формулу для своего часового пояса, посетите веб- сайт https://www.epochconverter.com/ и получите временную метку для 1899-12-30 0:00:00 по местному времени.

Как отмечает mbican, эта формула отключена на 1 день. xkcd.com/386
Дейв Л.

Ответ сейчас исправлен.
Дейв Л.

3

Результат был на один день впереди меня, поэтому я изменил его на =to_date((A1+2209161600)/86400)


1

В Google Sheets

A1 -> ячейка с отметкой времени * nix

Формула даты =(((A1/60)/60)/24)+DATE(1970;1;1)


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.