Formatos de fecha y número

Los formatos de fecha-hora y número te permiten controlar cómo aparecen tus datos en una hoja. Hojas de cálculo de Google ofrece algunos formatos comunes para elegir, pero también puedes definir tus propios formatos.

En la IU de Hojas de cálculo, puedes aplicar formatos de número y fecha a las celdas con el menú Formato > Número. En la API de Hojas de cálculo, puedes configurar estos formatos con una llamada de método spreadsheets.batchUpdate para enviar un UpdateCellsRequest o un RepeatCellRequest.

En esta página, se describe cómo definir nuevos patrones de formato de fecha y número, que puedes incluir en la solicitud a la API. En el ejemplo Cómo establecer un formato personalizado de fecha y hora o decimal para un rango, se muestra cómo establecer un patrón de formato con la API. Ten en cuenta que la renderización real del formato depende del locale de la hoja de cálculo. En esta guía, se supone que locale es en_US. Para determinar el locale de una hoja de cálculo, lee SpreadsheetProperties con una solicitud spreadsheets.get.

Acerca de los valores de fecha y hora

Hojas de cálculo, al igual que la mayoría de las aplicaciones de hojas de cálculo, trata los valores de fecha y hora como valores decimales. Esto te permite realizar operaciones aritméticas con ellos en fórmulas, por lo que puedes incrementar días o semanas, sumar o restar dos fechas y horas, y realizar otras operaciones similares.

Hojas de cálculo usa un tipo de fecha de época que se usa comúnmente en las hojas de cálculo. La parte de número entero del valor (a la izquierda del decimal) cuenta los días desde el 30 de diciembre de 1899. La parte fraccionaria (a la derecha del decimal) cuenta el tiempo como una fracción de un día. Por ejemplo, el 1 de enero de 1900 al mediodía es 2.5, 2 porque son 2 días después del 30 de diciembre de 1899 y 0.5 porque el mediodía es medio día. El 1 de febrero de 1900 a las 3 p.m. es 33.625.

Hojas de cálculo trata correctamente al año 1900 como un año común y no como un año bisiesto.

Patrones de formato para fecha y hora

Un patrón de formato de fecha y hora es una cadena de subcadenas de token que, cuando se analizan, se reemplazan por los elementos de fecha y hora correspondientes (como el mes o la hora).

Tokens de formato de fecha y hora

En la siguiente tabla, se definen las subcadenas de token que puedes usar en un patrón de formato de fecha y hora. Un carácter + indica que el carácter anterior puede aparecer una o más veces y aun así coincidir con el patrón. Los caracteres que no aparecen en la siguiente tabla se tratan como literales y se muestran sin cambios.

Token Descripción
h Es la hora del día. Cambia entre el formato de 12 y 24 horas en función de si hay un indicador de a.m. o p.m. en la cadena.
hh+ Igual que la anterior, pero con un 0 adelante (1-9).
m Si el token no literal anterior era de horas o el siguiente es de segundos, representa los minutos de la hora (sin un 0 adelante). De lo contrario, representa el mes del año como un número (sin 0 adelante).
M El mes del año sin 0 adelante. Usa este token para indicar expresamente un mes, en lugar de un minuto, en tu patrón.
mm Igual que m, pero con un 0 adelante para ambos casos.
MM El mes del año con un 0 a la izquierda. Usa este token para indicar expresamente un mes, en lugar de un minuto, en tu patrón.
mmm Abreviatura del mes de tres letras (por ejemplo, “Feb”).
mmmm Nombre del mes completo. mmmmmm+ también coincide con esto.
mmmmm Primera letra del mes (por ejemplo, “J” para junio).
s Segundos del minuto sin 0 adelante.
ss Segundos del minuto con 0 adelante.
[h+] Cantidad de horas transcurridas durante cierto tiempo. La cantidad de letras indica la cantidad mínima de dígitos (se agregan los 0 iniciales).
[m+] Cantidad de minutos transcurridos durante cierto tiempo. La cantidad de letras indica la cantidad mínima de dígitos (se agregan los 0 iniciales).
[s+] Cantidad de segundos transcurridos durante cierto tiempo. La cantidad de letras indica la cantidad mínima de dígitos (se agregan los 0 iniciales).
d Día del mes (sin 0 adelante para números menores que 10)
dd Día del mes (con 0 adelante para números menores que 10)
ddd Día de la semana, abreviatura de tres letras (por ejemplo, "Lun").
dddd+ Día de la semana (nombre completo).
y Año de 2 dígitos.
yy
yyy Año (4 dígitos).
yyyy+
a/p Muestra "a" para a.m. y "p" para p.m. También cambia las horas al formato de 12 horas. Si la letra del token está en mayúscula, el resultado también lo está.
am/pm Igual que se muestra arriba, pero muestra “a.m.” o “p.m.” en su lugar y siempre en mayúsculas.
0 Décimas de segundos. Puedes aumentar la precisión a dos dígitos con 00 o tres dígitos (milisegundos) con 000.
\ Trata el carácter siguiente como un valor literal y no como un significado especial que podría tener.
"text" Muestra el texto que se encuentre entre comillas como literal.

Ejemplos de formatos de fecha y hora

Dadas la fecha y la hora Tuesday, April 5, 2016, 4:08:53.528 PM, en la siguiente tabla, se muestran algunos patrones de ejemplo y su correspondiente renderización de fecha y hora. En la segunda sección de la tabla, se muestran ejemplos de formatos de tiempo transcurrido para un tiempo transcurrido de 3 hours, 13 minutes, 41.255 seconds:

Patrones de fecha y hora Tuesday, April 5, 2016, 4:08:53.528 PM
h:mm:ss.00 a/p 4:08:53.53
hh:mm A/P".M." 04:08 P.M.
yyyy-mm-dd 2016-04-05
mmmm d \[dddd\] 5 de abril [martes]
h PM, ddd mmm dd 4 p.m., mar 5 de abril
dddd, m/d/yy at h:mm Martes, 5/4/16 a las 16:08
Patrones de tiempo transcurrido 3 hours, 13 minutes, 41.255 seconds
[hh]:[mm]:[ss].000 03:13:41.255
[mmmm]:[ss].000 0193:41.255

Patrones de formato de número

Un patrón de formato de número es una string de subcadenas de token que, cuando se analizan, se reemplazan por las representaciones de números correspondientes. Un patrón de formato de número puede constar de hasta cuatro secciones, separadas por punto y coma, que definen los formatos separados que se usan para números positivos, números negativos, cero y texto (en ese orden):

[POSITIVE FORMAT];[NEGATIVE FORMAT];[ZERO FORMAT];[TEXT FORMAT]

No necesitas incluir las cuatro secciones en un formato. Si solo incluyes una sección, ese formato se usa para todos los valores. Si usas dos secciones, el primer formato se aplicará a cero y a números positivos, y el segundo formato a números negativos. Si usas tres secciones, se definen formatos independientes para números positivos, negativos y cero. Por ejemplo:

[NUMBER FORMAT]
[POSITIVE/ZERO FORMAT];[NEGATIVE FORMAT]
[POSITIVE FORMAT];[NEGATIVE FORMAT];[ZERO FORMAT]

Sin embargo, si hay dos o más secciones y la última es un formato de texto, esa sección se trata como el formato de texto y las otras se comportan como si hubiera una sección menos. Por lo tanto, si incluyes un formato de texto final, es posible definir formatos como los siguientes:

[POSITIVE/ZERO FORMAT];[NEGATIVE FORMAT];[TEXT FORMAT]
[NUMBER FORMAT];[TEXT FORMAT]

El análisis de las secciones de un formato se produce antes que otros análisis, por lo que es posible incluir un formato de fecha o de hora como una de las secciones (aunque su utilidad es limitada).

Tokens de formato de número

En la siguiente tabla, se definen las subcadenas de token que puedes usar en una sección de formato para definir cómo representar los valores para esa sección.

Token Descripción
0 Representa un dígito del número. Si el dígito es un 0 no significativo, se renderiza como 0. Por ejemplo, el formato de número 00.0 renderiza el número 3 como "03.0".
# Representa un dígito del número. Si el dígito es un 0 no significativo, no se renderiza. Por ejemplo, el formato de número ##0 renderiza el número 12 como "12".
? Representa un dígito del número. Si el dígito es un 0 no significativo, se renderiza como un espacio. A menudo, se usa para alinear el punto decimal en una columna cuando se usan fuentes de ancho fijo. Por ejemplo, el formato de número ???.??? renderiza el número 12.4 como: "12.4 ".
. El primer punto representa el punto decimal del número. Los puntos posteriores se renderizan como literales. Si incluyes un punto decimal en el formato, siempre se renderiza, incluso con números enteros. Por ejemplo, #0.# renderiza el número 3 como "3.".
% Parece un literal, pero también hace que los números existentes se multipliquen por 100 antes de renderizarlos para que los porcentajes sean más legibles. Por ejemplo, el formato de número #% procesa el número 0.25 como “25%”.
, Si aparece entre caracteres de dos dígitos (0, # o ?), se renderiza el número completo con separadores de agrupación (agrupación por miles). Si sigue los caracteres de dígito, escala los dígitos en mil por coma (por ejemplo, el formato #0.0,, renderiza el número 12,200,000 como 12.2).
E- Renderiza el número en formato científico, con el formato de la izquierda de E que se usa para la parte no exponencial y el formato de la derecha de la E para la parte exponencial. E+ muestra un signo + para los exponentes positivos. E- solo muestra un signo para los exponentes negativos. Si se usa minúscula, el resultado e también está en minúscula. Por ejemplo, el formato de número ##0.00#E+## procesa el número 0.0000001 como “100.00E-9”.
E+
e-
e+
/ Si aparece entre caracteres de dos dígitos (0, # o ?), trata esos grupos de dígitos como un formato fraccionario. Por ejemplo, el formato de número 0 #/# renderiza el número 23.25 como 23 1/4. El denominador también puede ser un número entero literal, en cuyo caso aplica ese número entero como denominador. El formato 0 #/8 muestra el número 23.25 como 23 2/8. La parte fraccionaria no se renderiza si el numerador se convierte en 0. El número 23.1 con el formato 0 #/3 se renderiza como solo 23 (porque 0.1 se redondea a 0/3). / no es compatible con el formato científico o un formato que tenga punto decimal.
* Se incluye para brindar compatibilidad con los formatos de número de Microsoft Excel. Actualmente se ignora.
_ El token de guion bajo omite el carácter siguiente y renderiza un espacio. Se usa para alinear formatos de número en los que el valor negativo esté entre paréntesis.
\ Trata el carácter siguiente como un valor literal y no como un significado especial que podría tener. Por ejemplo, el formato de número \#0 procesa el número 10 como “#10”.
"text" Muestra el texto que se encuentre entre comillas como literal.
@ Si la celda tiene una entrada de texto, inserta el texto sin procesar para la celda. No es compatible con ninguno de los otros caracteres especiales y no se muestra para valores numéricos (que se muestran en formato general).
$ - + ( ) : space Hojas de cálculo trata estos caracteres como literales y los muestra sin cambios.

Instrucciones de los metadatos

Además, cada una de las secciones de formato puede tener metainstrucciones opcionales, encerradas en caracteres [], que preceden al formato y proporcionan instrucciones adicionales. Hay dos tipos de metainstrucciones, y una sección determinada puede usar ambas:

Instrucción Descripción
[condition] Reemplaza la comparación positiva, negativa o cero predeterminada de la sección por otra expresión condicional. Por ejemplo, [<100]”Low”;[>1000]”High”;000 renderiza la palabra "Baja" para valores inferiores a 100, "Alta" para valores superiores a 1, 000 y un número de tres dígitos (con 0 adelante) para cualquier valor intermedio. Las condiciones solo se pueden aplicar a los dos primeros subformatos. Si un número coincide con más de uno, utiliza el primero con el que coincida. Si hay un tercer formato, se usa para "todo lo demás". De lo contrario, si un número no coincide con ninguno de los formatos, se renderiza como todos los "#" que ocupan el ancho de la celda. Si existe, el cuarto formato siempre se usa para el texto.
[Color] or [Color#] Hace que cualquier valor que renderiza este subformato aparezca con el color de texto determinado. Los valores válidos para Color son negro, azul, cian, verde, magenta, rojo, blanco o amarillo. Los valores válidos para "#" en Color# son 0-56 (esta paleta de colores muestra una lista de los colores que corresponden a cada número). Los colores del formato de número anulan cualquier color que ingrese el usuario en la celda, pero no anulan los colores establecidos por el formato condicional.

Ejemplos de formatos de número

En la siguiente tabla, se muestran algunos patrones de ejemplo y su correspondiente renderización de números con formato:

Número Patrón Valor con formato
12345.125 ####.# 12,345.1
12.34 000.0000 012.3400
12 #.0# 12.0
5,125 # ???/??? 5 1/8
12000 #,### 12,000
1230000 0.0,,"M" 1.2 M
1234500000 0.00e+00 1.23e+09
123114.15115
MiTexto
###0.000;"TEXT: "_(@_) 123114.151
TEXTO: MiTexto
1234
-1234
0
MiTexto
[Blue]#,##0;[Red]#,##0;[Green]0.0;[Magenta]_(@_) 1,234
1,234
0.0
MyText
1,005
32
527
[>1000]"HIGH";[Color43][<=200]"LOW";0000 ALTA
BAJA
0527