google-apps-script google-sheets

google-apps-script - date unix



Convertir Unix Epoch Time to Date en Google Sheets (3)

Tengo una hoja con una columna de tiempos de época de Unix (en segundos): 1500598288

¿Cómo puedo convertir estos en fechas normales?


Haz una función personalizada usando la función de fecha javascript:

Herramientas> Editor de secuencias de comandos ...>

function FROM_UNIX_EPOCH(epoch_in_secs) { return new Date(epoch_in_secs * 1000); // Convert to milliseconds }

Y luego en una nueva columna puedes hacer =FROM_UNIX_EPOCH(A1)


La fórmula dada en la respuesta por ttarchala es incorrecta. Aquí hay una respuesta más expansiva.

Recomiendo no reemplazar los datos en segundos desde la columna de épocas. Puede necesitarlo para clasificar, etc. Además, será difícil aplicar la fórmula a una columna completa. En su lugar, inserte inicialmente una nueva columna junto a ella.

Haga clic en la nueva celda adyacente a la celda de la época superior. Suponiendo que la celda de la época más alta es A1, ingrese esta fórmula en el cuadro de fórmulas para la nueva celda.

=A1/8640000+date(1970,1,1)

La fecha y hora se debe mostrar en su nueva celda. Por defecto, solo mostrará la fecha y no la hora. Para que muestre la hora también necesitas cambiar el formato de celda. Con su nueva celda de fecha seleccionada, haga clic en el menú desplegable de formato 123 y seleccione el formato de celda requerido.

Para aplicar esta fórmula a todas las celdas de la columna, haga clic en el pequeño cuadrado negro (manejador) en la parte inferior derecha de la celda de fecha / hora y arrástrelo a la parte inferior de la columna. Una vez que suelte el arrastre, las columnas deben completarse con la conversión de fecha y hora para su celda de datos de época adyacente. Puede ver el índice de celda de datos de época cambiado en la fórmula a medida que selecciona cada celda por separado.


La forma más sencilla, que no requiere ninguna programación de JS, sería a través de una fórmula, dividida por 86400 segundos por día y agregada al 1 de enero de 1970. Por ejemplo, lo siguiente es el 21 de julio de 2017:

=1500598288/86400+date(1970,1,1)

Para convertir una columna entera de números, simplemente use ARRAYFORMULA:

=arrayformula(A:A/86400+date(1970,1,1))