2017-07-21 58 views

Odpowiedz

6

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)

24

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)) 
+0

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

+0

proszę zmienić literówkę w ciągu kilku sekund: https://productforums.google.com/d/msg/docs/cXhne_Ys_QU/un3q9nVR3qMJ – lbrutti

+0

Witam @ lbrutti, do czego dokładnie się odnosisz? Czym jest literówka? – ttarchala

0

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.

+0

Czy byłbyś w stanie wyjaśnić, gdzie dokładnie moja odpowiedź jest nieprawidłowa? – ttarchala

+0

Ponadto, moja odpowiedź jest banalnie łatwa do zastosowania do całej kolumny przy użyciu = ARRAYFORMULA(). – ttarchala

+0

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