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 proporciona 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 mediante 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 UpdateCellsRequest o RepeatCellRequest.

En esta página, se describe cómo definir nuevos patrones de formato de fecha y número, que puedes incluir en tu solicitud a la API. En el ejemplo Establece un formato personalizado de fecha y hora o decimal para un rango, se indica 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 da por sentado que locale es en_US. Puedes determinar el locale de una hoja de cálculo si lees 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 los días o las 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 suele usar 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 es 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 considera correctamente el año 1900 como un año común, no como un año bisiesto.

Patrones de formato para fecha y hora

Un patrón de formato de fecha y hora es una string de substrings de tokens que, cuando se analizan, se reemplazan con 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 substrings de tokens 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 figuran en la siguiente tabla se tratan como literales y se muestran sin cambios.

Token Descripción
h 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 el anterior, pero con un 0 adelante (1-9).
m Si el token no literal anterior era horas o el siguiente es segundos, representa los minutos de la hora (sin 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 a la izquierda Usa este token para indicar expresamente un mes, en lugar de un minuto, en el patrón.
mm Igual que m, pero con un 0 adelante en 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 el patrón.
mmm Abreviatura del mes de tres letras (por ejemplo, “Feb”).
mmmm Nombre completo del mes 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+] Es la 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 a la izquierda para números menores que 10
dd Día del mes (0 adelante para los 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 Es el año (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 la hora al formato de 12 horas. Si la letra del token está en mayúscula, el resultado también lo está.
am/pm Como se muestra arriba, pero muestra “a.m.” o “p.m.” en su lugar y siempre en mayúscula.
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 dentro de las comillas como literal.

Ejemplos de formatos de fecha y hora

Dadas la fecha y hora Tuesday, April 5, 2016, 4:08:53.528 PM, en la siguiente tabla, se muestran algunos patrones de ejemplo y su procesamiento de fecha y hora correspondiente. 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 p
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 05 de abr
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 3: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 substrings de token que, cuando se analiza, se reemplazan por las representaciones de número 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 es necesario que incluyas 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 sección final es un formato de texto, esa sección se trata como el formato de texto y las demás 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 un formato en secciones se produce antes que otros análisis, por lo que es posible incluir un formato de fecha y hora como una de las secciones (aunque esto es de utilidad limitada).

Tokens de formato de número

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

Token Descripción
0 Representa un dígito del número. Si el dígito es un 0 no significativo, se representa 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 representa como un espacio. Se suele usar 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 de la siguiente manera: " 12.4 ".
. El primer punto representa el punto decimal del número. Los puntos posteriores se procesan 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 renderizarse para que los porcentajes sean más legibles. Por ejemplo, el formato de número #% renderiza el número 0.25 como "25%".
, Si aparece entre caracteres de dos dígitos (0, # o ?), se procesa el número completo con separadores de grupo (agrupados 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. El formato de la izquierda de E se usa para la parte no exponencial y el formato de la derecha de E se usa para la parte del exponente. 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+## renderiza 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 ese caso, lo exige como denominador. El formato de número 0 #/8 muestra el número 23.25 como 23 2/8. La parte de la fracción no se renderiza si el numerador es 0. El número 23.1 con el formato de número 0 #/3 se procesa como 23 (porque 0.1 se redondea a 0/3). / no es compatible con el formato científico ni con un formato que contenga un punto decimal.
* Esto se incluye para la 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 cuando 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 renderiza el número 10 como "#10".
"text" Muestra el texto que se encuentre dentro de las comillas como literal.
@ Si la celda tiene una entrada de texto, inserta el texto sin procesar correspondiente. No es compatible con ninguno de los otros caracteres especiales y no se muestra en valores numéricos (que se muestran como formato general).
$ - + ( ) : space Hojas de cálculo trata estos caracteres como literales y los muestra sin cambios.

Instrucciones de metadatos

Además, cada una de las secciones de formato puede tener metainstrucciones opcionales, encerrados entre caracteres [], que preceden al formato y proporcionan instrucciones adicionales. Existen 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 procesa la palabra "Bajo" para los valores inferiores a 100, "Alta" para los 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, usa 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 "#" que ocupan el ancho de la celda. Si existe, siempre se usa el cuarto formato para el texto.
[Color] or [Color#] Hace que cualquier valor que renderice este subformato aparezca con el color de texto dado. 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&ndash1;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 formato condicional.

Ejemplos de formatos de número

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

Número Patrón Valor con formato
12,345.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.2M
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