Mam arkusz z kolumny czasów epoki Uniksa (w sekundach): 1500598288Konwersja Unix Epoch Time to data w arkuszach Google
Jak mogę przekształcić je w normalnych terminach?
Mam arkusz z kolumny czasów epoki Uniksa (w sekundach): 1500598288Konwersja Unix Epoch Time to data w arkuszach Google
Jak mogę przekształcić je w normalnych terminach?
Zrób funkcji niestandardowej przy użyciu javascript Date function:
Narzędzia> Script Editor ...>
function FROM_UNIX_EPOCH(epoch_in_secs) {
return new Date(epoch_in_secs * 1000); // Convert to milliseconds
}
A potem w nowej kolumnie można zrobić =FROM_UNIX_EPOCH(A1)
Najprostszym sposobem, niewymagające programowania JS polegałoby na formułowaniu, dzieląc 86400 sekund na dzień i dodając do 1 stycznia 1970. Na przykład: 21 lipca 2017 roku:
=1500598288/86400+date(1970,1,1)
Aby przekształcić całą kolumnę liczb, wystarczy użyć ARRAYFORMULA:
=arrayformula(A:A/86400+date(1970,1,1))
Formuła podana w odpowiedzi przez ttarchala jest nieprawidłowy. Oto bardziej ekspansywna odpowiedź.
Zalecam, aby nie zastępować danych w sekundach od kolumny czasów epok. Możesz go potrzebować do sortowania itp. Dodatkowo, trudno będzie zastosować formułę do całej kolumny. Zamiast tego wstaw najpierw nową kolumnę obok.
Kliknij nową komórkę obok najwyższej komórki epoki. Zakładając, że najwyższa komórka epoki to A1, wprowadź tę formułę w polu formuły dla nowej komórki.
=A1/8640000+date(1970,1,1)
Data godziny powinna być wyświetlana w nowej komórce. Domyślnie wyświetla tylko datę, a nie czas. Aby pokazać czas również, musisz zmienić format komórki. Po wybraniu nowej komórki daty kliknij menu rozwijane formatu 123 i wybierz wymagany format komórki.
Aby zastosować tę formułę do wszystkich komórek w kolumnie, kliknij mały czarny kwadrat (uchwyt) w prawym dolnym rogu komórki daty/czasu i przeciągnij ją na dół kolumny. Po zwolnieniu przeciągnij kolumny powinny zostać wypełnione konwersją daty dla sąsiedniej komórki danych epoki. Możesz zobaczyć indeks komórki danych epoki zmieniony w formule, wybierając każdą komórkę osobno.
Czy byłbyś w stanie wyjaśnić, gdzie dokładnie moja odpowiedź jest nieprawidłowa? – ttarchala
Ponadto, moja odpowiedź jest banalnie łatwa do zastosowania do całej kolumny przy użyciu = ARRAYFORMULA(). – ttarchala
Obawiam się też, że to twoja odpowiedź jest niepoprawna - OP prosi o konwersję czasu w _seconds_, a więc czas powinien być podzielony przez 86 400 sekund dziennie. Dlaczego mówisz OP, aby dzielił 8,640,000? – ttarchala
Czas Unix to UTC (Coordinated Universal Time). Biorąc pod uwagę Twoją strefę czasową, na przykład, jestem w San Francisco, będzie to – Jiayang
proszę zmienić literówkę w ciągu kilku sekund: https://productforums.google.com/d/msg/docs/cXhne_Ys_QU/un3q9nVR3qMJ – lbrutti
Witam @ lbrutti, do czego dokładnie się odnosisz? Czym jest literówka? – ttarchala