Конвертировать эпоху Unix в Google Таблицах
У меня есть лист с колонкой unix epoch раз (в секундах): 1500598288
Как я могу преобразовать их в обычные даты?
Ответы
Ответ 1
Самый простой способ, не требующий программирования JS, - это получить формулу, делящуюся на 86400 секунд в день и добавляя к 1 января 1970 года. Например, 21 июля 2017 года:
=1500598288/86400+date(1970,1,1)
Чтобы преобразовать весь столбец чисел, просто используйте ARRAYFORMULA:
=arrayformula(A:A/86400+date(1970,1,1))
Ответ 2
Создайте пользовательскую функцию, используя функцию javascript Date:
Инструменты> Редактор сценариев...>
function FROM_UNIX_EPOCH(epoch_in_secs) {
return new Date(epoch_in_secs * 1000); // Convert to milliseconds
}
А затем в новом столбце вы можете сделать =FROM_UNIX_EPOCH(A1)
Ответ 3
Формула, указанная в ответе ttarchala, неверна. Вот более экспансивный ответ.
Я бы порекомендовал не заменять данные в секундах со столбца времени эпохи. Это может понадобиться для сортировки и т.д. Кроме того, будет сложно применить формулу ко всей колонке. Вместо этого сначала вставьте новый столбец рядом с ним.
Щелкните в новой ячейке, расположенной рядом с верхней ячейкой эпохи. Предполагая, что самая верхняя ячейка эпохи - A1, введите эту формулу в поле формулы для новой ячейки.
=A1/8640000+date(1970,1,1)
Время даты должно отображаться в вашей новой ячейке. По умолчанию будет отображаться только дата, а не время. Чтобы показать это время, вам нужно изменить формат ячейки. Выбрав новую ячейку даты, щелкните раскрывающееся меню формата 123 и выберите нужный формат ячейки.
Чтобы применить эту формулу ко всем ячейкам в столбце, щелкните маленький черный квадрат (дескриптор) в правом нижнем углу ячейки даты и времени и перетащите его в нижнюю часть столбца. После того, как вы отпустите перетаскивание, столбцы должны быть заполнены преобразованием времени даты для соседней ячейки данных эпохи. Вы можете увидеть индекс ячейки данных эпохи, измененный в формуле, когда вы выбираете каждую ячейку отдельно.