Os formatos de data/hora e número permitem controlar como seus dados aparecem em uma página. O Planilhas Google oferece alguns formatos comuns que você pode escolher, mas também é possível definir seus próprios formatos.
Na interface do app Planilhas, você aplica formatos de número e data às células usando o menu
Formato > Número. Na API Sheets, você define esses formatos usando uma chamada de método
spreadsheets.batchUpdate
para enviar um
UpdateCellsRequest
ou
RepeatCellRequest
.
Esta página descreve como definir novos padrões de formato de data e número, que podem ser incluídos na solicitação de API. O exemplo
Definir um formato personalizado de data/hora ou decimal para um intervalo
mostra como definir um padrão de formato usando a API. A renderização
do formato depende do locale
da planilha. Este guia pressupõe que
locale
seja en_US
. É possível determinar o locale
de uma planilha lendo
o
SpreadsheetProperties
com uma solicitação
spreadsheets.get
.
Sobre os valores de data e hora
O Planilhas, como a maioria dos outros aplicativos de planilhas, trata valores de data e hora como decimais. Com isso, você pode realizar operações aritméticas nesses valores com fórmulas, por exemplo, para somar dias ou semanas, adicionar ou subtrair duas datas e horários e realizar outras operações semelhantes.
O Planilhas usa uma forma de
data de época
comumente usada em planilhas. A parte numérica inteira do valor
(à esquerda do separador de decimal) conta os dias desde 30 de dezembro de 1899. A parte
fracionária (à direita do ponto decimal) conta a hora como uma fração de um dia. Por
exemplo, 1º de janeiro de 1900 ao meio-dia é 2.5
, 2
porque é dois dias após
30 de dezembro de 1899 e 0.5
porque meio-dia é metade de um dia. 1 de fevereiro de 1900 às 15h
é 33.625
.
O Planilhas Google trata o ano 1900 como um ano normal, não bissexto.
Padrões de formato de data e hora
Um padrão de formato de data e hora é uma string de substrings de token que, quando analisadas, são substituídas pelos elementos de data/hora correspondentes (como o mês ou a hora).
Tokens de formato de data e hora
A tabela a seguir define as substrings de token que podem ser usadas em um padrão de formato de data/hora. Um caractere +
indica que o caractere anterior pode aparecer
uma ou mais vezes e ainda corresponder ao padrão. Os caracteres não listados na
tabela abaixo são tratados literalmente e exibidos sem alterações.
Token | Descrição |
---|---|
h |
Hora do dia. Alterna entre o formato de 12 e 24 horas dependendo se um indicador de AM ou PM está presente na string. |
hh+ |
Igual ao anterior, mas com um 0 antes de 1-9. |
m |
Se o token não literal anterior for horas ou se o seguinte for segundos, ele vai representar os minutos na hora (sem 0 na frente). Caso contrário, ele representa o mês do ano como um número (sem 0 na frente). |
M |
O mês do ano sem o zero à esquerda. Use esse token para declarar explicitamente um mês, em vez de um minuto, no seu padrão. |
mm |
O mesmo que m , mas com um 0 na frente de ambos os casos. |
MM |
O mês do ano com um 0 à esquerda. Use esse token para declarar explicitamente um mês, em vez de um minuto, no seu padrão. |
mmm |
Abreviação de três letras do mês (por exemplo, "Fev"). |
mmmm |
Nome completo do mês. mmmmmm+ também corresponde a isso. |
mmmmm |
Primeira letra do mês (por exemplo, "J" para junho). |
s |
Segundos no minuto sem um 0 à esquerda. |
ss |
Segundos no minuto com um 0 à esquerda. |
[h+] |
Número de horas decorridas em um intervalo de tempo. O número de letras indica o número mínimo de dígitos (adiciona 0s na frente). |
[m+] |
Número de minutos decorridos em um intervalo de tempo. O número de letras indica o número mínimo de dígitos (adiciona 0s na frente). |
[s+] |
Número de segundos decorridos em um intervalo de tempo. O número de letras indica o número mínimo de dígitos (adiciona 0s na frente). |
d |
Dia do mês, sem 0 na frente para números inferiores a 10. |
dd |
Dia do mês, com um 0 na frente para números inferiores a 10. |
ddd |
Dia da semana, abreviação de três letras (por exemplo, "Seg"). |
dddd+ |
Dia da semana, nome completo. |
y |
Ano com dois dígitos. |
yy |
|
yyy |
Ano com 4 dígitos. |
yyyy+ |
|
a/p |
Mostra "a" para AM e "p" para PM. Também muda as horas para o formato de 12 horas. Se a letra do token for maiúscula, o resultado também será. |
am/pm |
Como acima, mas exibe "AM" ou "PM" e sempre aparece em letras maiúsculas. |
0 |
Décimos de segundos. É possível aumentar a precisão para dois dígitos com
00 ou três dígitos (milissegundos) com 000 . |
\ |
Trata o próximo caractere como um valor literal ignorando qualquer significado especial que ele possa ter. |
"text" |
Mostra o texto que estiver dentro das aspas de forma literal. |
Exemplos de formato de data e hora
Considerando a data e hora Tuesday, April 5, 2016, 4:08:53.528 PM
, a
tabela a seguir mostra alguns exemplos de padrões e a renderização de data/hora
correspondente. A segunda seção da tabela mostra exemplos de formatos de tempo
decorrido considerando 3 hours, 13 minutes, 41.255 seconds
:
Padrões de data e 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 |
yyyy-mm-dd |
2016-04-05 |
mmmm d \[dddd\] |
5 de abril [terça-feira] |
h PM, ddd mmm dd |
16h, terça-feira, 5 de abril |
dddd, m/d/yy at h:mm |
Terça-feira, 4/5/16 às 16h08 |
Padrões de tempo decorrido | 3 hours, 13 minutes, 41.255 seconds |
[hh]:[mm]:[ss].000 |
03:13:41.255 |
[mmmm]:[ss].000 |
0193:41.255 |
Padrões de formato de número
Um padrão de formato de número é uma string de substrings de token que, quando analisadas, são substituídas pelas representações numéricas correspondentes. Um padrão de formato de número pode consistir em até quatro seções, separadas por ponto-e-vírgula, que definem os formatos separados usados para números positivos, negativos, zero e texto (nessa ordem):
[POSITIVE FORMAT];[NEGATIVE FORMAT];[ZERO FORMAT];[TEXT FORMAT]
Não é preciso incluir todas as quatro seções em um formato. Se você incluir apenas uma seção, esse formato será usado para todos os valores. Usar duas seções faz com que o primeiro formato seja aplicado a zero e números positivos, e o segundo formato a números negativos. Usar três seções define formatos separados para números positivos, negativos e zero. Exemplo:
[NUMBER FORMAT] [POSITIVE/ZERO FORMAT];[NEGATIVE FORMAT] [POSITIVE FORMAT];[NEGATIVE FORMAT];[ZERO FORMAT]
No entanto, se houver duas ou mais seções e a última for um formato de texto, essa seção será tratada como o formato de texto e as outras se comportarão como se tivesse uma seção a menos. Dessa forma, ao incluir um formato de texto final, é possível definir formatos como:
[POSITIVE/ZERO FORMAT];[NEGATIVE FORMAT];[TEXT FORMAT] [NUMBER FORMAT];[TEXT FORMAT]
A análise de um formato em seções ocorre antes de qualquer outro tipo de análise, portanto, é possível ter um formato de data ou hora incluído como uma das seções (apesar de isso ter utilidade limitada).
Tokens de formato de número
A tabela a seguir define as substrings de token que você pode usar em uma seção de formato para definir como representar os valores dessa seção.
Token | Descrição |
---|---|
0 |
Representa um dígito no número. Se o dígito for um 0 insignificante,
ele será renderizado como 0. Por exemplo, o formato de número
00.0 renderiza o número 3 como "03.0 ". |
# |
Representa um dígito no número. Se o dígito for um 0 insignificante,
ele não será renderizado. Por exemplo, o formato de número ##0
renderiza o número 12 como "12 ". |
? |
Representa um dígito no número. Se o dígito for um 0 insignificante,
ele será renderizado como um espaço. Esse token é frequentemente usado para alinhar o separador decimal em
uma coluna ao usar fontes de largura fixa. Por exemplo, o formato de número
???.??? renderiza o número 12,4 como:
" 12.4 ". |
. |
O primeiro ponto representa o separador decimal do número. Pontos
subsequentes são renderizados literalmente. Se você incluir um ponto decimal no
formato, ele sempre será renderizado, mesmo para números inteiros. Por exemplo,
#0.# renderiza o número 3 como "3. ". |
% |
Aparece como um literal, mas também faz com que os números existentes sejam multiplicados
por 100 antes de serem renderizados para facilitar a leitura dos
percentuais. Por exemplo, o formato de número #%
renderiza o número 0,25 como "25% ". |
, |
Se aparecer entre caracteres de dois dígitos (0 ,
# ou ? ), renderiza o número inteiro
com separadores de agrupamento (agrupamento de milhares). Se o token seguir
os caracteres de dígito, ele dimensiona os dígitos em 1000 por
vírgula (por exemplo, o formato #0.0,, renderiza o número
12.200.000 como 12.2 ). |
E- |
Renderiza o número no formato científico, com a
formatação à esquerda do E usado para a parte não expoente
e a formatação à direita do E usado para a parte
expoente. E+ mostra um sinal + para expoentes
positivos. E- mostra apenas um sinal para expoentes negativos. Se
letras minúsculas forem usadas, a saída e também será em letras minúsculas.
Por exemplo, o formato de número ##0.00#E+##
renderiza o número 0,0000001 como "100.00E-9 ". |
E+ |
|
e- |
|
e+ |
|
/ |
Se ele aparecer entre dois caracteres de dígito (0 ,
# ou ? ), ele vai tratar esses grupos de dígitos como um
formato fracionário. Por exemplo, o formato de número 0 #/# renderiza
o número 23,25 como 23 1/4 . O denominador
também pode ser um número inteiro literal. Nesse caso, ele impõe esse número inteiro como
denominador. O formato de número 0 #/8
mostra o número 23,25 como 23 2/8 . A parte fracionária não é
renderizada se o numerador se tornar 0. O número
23.1 com o formato de número 0 #/3 é renderizado como
23 (porque 0,1 é arredondado para 0/3). / não é
compatível com o formato científico ou com um formato que tenha um ponto decimal
nele. |
* |
Isso é incluído para compatibilidade com os formatos de número do Microsoft Excel. No momento, ele é ignorado. |
_ |
O token de sublinhado pula o próximo caractere e renderiza um espaço. Esse token é usado para alinhar formatos de número nos quais o valor negativo é inserido entre parênteses. |
\ |
Trata o próximo caractere como um valor literal ignorando qualquer
significado especial que ele possa ter. Por exemplo, o formato de número \#0
renderiza o número 10 como "#10 ". |
"text" |
Mostra o texto que estiver dentro das aspas de forma literal. |
@ |
Se a célula tiver entrada de texto, o texto bruto dela será inserido. Não é compatível com nenhum outro caractere especial e não é exibido para valores numéricos (que são exibidos como um formato geral). |
$ - + ( ) : space |
O Planilhas trata esses caracteres como literais e os exibe sem alterações. |
Instruções meta
Além disso, cada uma das seções de formato pode ter instruções meta opcionais,
inseridas entre caracteres []
, que precedem o formato e fornecem
instruções adicionais. Há dois tipos de instrução meta, e uma seção
pode usar ambos:
Instrução | Descrição |
---|---|
[condition] |
Substitui a comparação positiva, negativa ou de zero padrão da
seção por outra expressão condicional. Por exemplo,
[<100]”Low”;[>1000]”High”;000 renderiza a palavra
"Low" para valores abaixo de 100, "High" para valores acima de 1000 e um número de três dígitos (com 0s na frente) para valores intermediários. As condições só podem ser
aplicadas aos dois primeiros subformatos e, se um número corresponder a mais de um,
ele usará a primeira correspondência. Se houver um terceiro formato, ele será
usado para "todo o resto". Caso contrário, se um número não corresponder a
nenhum dos formatos, ele será renderizado como todos os "#" preenchendo a largura da célula. Se ele existir, o
quarto formato será sempre usado para texto. |
[Color] or [Color#] |
Faz com que qualquer valor renderizado por esse subformato apareça com a cor de texto especificada. Os valores válidos para Color são preto, azul, ciano, verde, magenta, vermelho, branco ou amarelo. Os valores válidos para "#" em Color# são 1 a 56. Esta paleta de cores mostra uma lista das cores que correspondem a cada número. Cores de formatos de número substituem qualquer cor inserida pelo usuário na célula, mas não as cores definidas pela formatação condicional. |
Exemplos de formato de número
A tabela a seguir mostra alguns exemplos de padrões e a renderização de número formatado correspondente:
Número | Padrão | Valor formatado |
---|---|---|
12345.125 | ####.# |
12345.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 milhão |
1234500000 | 0.00e+00 |
1,23e+09 |
123114.15115 MyText |
###0.000;"TEXT: "_(@_) |
123114.151 TEXT: MyText |
1234 -1234 0 MyText |
[Blue]#,##0;[Red]#,##0;[Green]0.0;[Magenta]_(@_) |
1.234 1.234 0.0 MyText |
1005 32 527 |
[>1000]"HIGH";[Color43][<=200]"LOW";0000 |
HIGH LOW 0527 |