As planilhas podem ter várias páginas, com qualquer número de linhas em cada uma
ou colunas. Uma célula é um local no
interseção de uma linha e coluna específicas e pode conter um valor de dados. A
A API Google Sheets fornece a
spreadsheets.values
para habilitar a leitura e gravação de valores.
Esta página descreve os conceitos básicos do uso do recurso spreadsheets.values
. Se
você precisa inserir linhas ou atualizar a formatação e outras propriedades em um
planilha, use o método
spreadsheets.batchUpdate
descrito em Atualizar planilhas.
Métodos
O recurso spreadsheets.values
fornece os seguintes métodos para ler e gravar valores, cada um para um
uma tarefa específica:
Acesso ao intervalo | Leitura | Escrita |
---|---|---|
Intervalo único | spreadsheets.values.get |
spreadsheets.values.update |
Vários intervalos | spreadsheets.values.batchGet |
spreadsheets.values.batchUpdate |
Como anexar | spreadsheets.values.append |
Em geral, é uma boa ideia combinar várias leituras ou atualizações com o
métodos batchGet
e batchUpdate
(respectivamente), porque isso melhora
a eficiência.
É possível encontrar exemplos de cada um desses métodos na Central de Ajuda leitura e Basic criar páginas de amostra. Para acessar todas as amostras, consulte acesse a página de visão geral das amostras.
Ler
Para ler os valores de dados de uma planilha, você precisa do ID da planilha e do
para o intervalo. Especificar o intervalo sem o ID da planilha (A1:B2
)
significa que a solicitação é executada na primeira página da planilha. Para mais
informações sobre IDs de planilhas e notação A1, consulte API Google Sheets
Visão geral.
Vários parâmetros de consulta opcionais controlam o formato da saída:
Parâmetro de formato | Valor padrão |
---|---|
majorDimension |
ROWS |
valueRenderOption |
FORMATTED_VALUE |
dateTimeRenderOption |
SERIAL_NUMBER |
Observe que você só deve usar dateTimeRenderOption
se o valueRenderOption
não é FORMATTED_VALUE
.
Não há um limite explícito para a quantidade de dados retornados. Os erros não retornam dados. Linhas e colunas vazias à direita são omitidas.
Os métodos "get" individuais e em lote são descritos abaixo. Para amostras de modelos operações de leitura, consulte Leitura básica.
Ler um único intervalo
Para ler um único intervalo de valores de uma planilha, use uma
spreadsheets.values.get
solicitação:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
A resposta a essa solicitação é retornada como uma
ValueRange
objeto.
Ler vários intervalos
Para ler vários intervalos de valores descontínuos de uma planilha, use um
spreadsheets.values.batchGet
que permite especificar vários intervalos a serem recuperados:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
A resposta a essa solicitação é retornada como uma
BatchGetValuesResponse
objeto que contém o spreadsheetId
e uma lista de
ValueRange
objetos.
Gravação
Para gravar em uma planilha, você precisa do ID da planilha, o intervalo de células em A1 e os dados que você quer gravar em um corpo de solicitação apropriado objeto. Para obter mais informações sobre IDs de planilhas e notação A1, consulte Visão geral da API Google Sheets.
As atualizações exigem um endereço
parâmetro ValueInputOption
.
Para atualizações únicas, esse é um parâmetro de consulta obrigatório. Para atualizações em lote,
esse parâmetro é obrigatório no corpo da solicitação. Os controles do ValueInputOption
como os dados de entrada devem ser interpretados e se as strings de entrada são analisadas ou
não, conforme descrito na tabela a seguir:
ValueInputOption |
Descrição |
---|---|
RAW |
A entrada não é analisada e inserida como uma string. Por exemplo, a entrada "=1+2" coloca a string, não a fórmula, "=1+2" na célula. Valores sem string, como booleanos ou números, sempre são processados como RAW . |
USER_ENTERED |
A entrada é analisada exatamente como se tivesse sido inserida na interface do app Planilhas. Por exemplo, "1o de março de 2016". se torna uma data e "=1+2" vira uma fórmula. Os formatos também podem ser inferidos, portanto, "$100,15" se torna um número com formatação de moeda. |
Os métodos de atualização singular e em lote são descritos abaixo. Para amostras de modelos operações de gravação, consulte Gravação básica.
Gravar em um único intervalo
Para gravar dados em um único intervalo, use um
spreadsheets.values.update
solicitação:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
O corpo da solicitação de atualização deve ser uma
ValueRange
embora o único campo obrigatório seja values
. Se range
for especificado, ele
precisa corresponder ao intervalo no URL. Em ValueRange
, é possível especificar
dela
majorDimension
.
Por padrão, ROWS
é usado. Se COLUMNS
for especificado, cada matriz interna será
gravadas em uma coluna em vez de em uma linha.
Durante a atualização, valores sem dados são ignorados. Para limpar os dados, use uma sequência "").
Gravar vários intervalos
Para gravar vários intervalos descontínuos, você pode usar uma
spreadsheets.values.batchUpdate
solicitação:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
O corpo da solicitação de atualização em lote deve ser uma
BatchUpdateValuesRequest
, que contém um ValueInputOption
e uma lista de
ValueRange
objetos (um para cada intervalo gravado). Cada objeto ValueRange
especifica o próprio
range
, majorDimension
e dados de entrada.
Anexar valores
Para anexar dados após uma tabela de dados em uma planilha, use uma
spreadsheets.values.append
solicitação:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
O corpo da solicitação de atualização deve ser uma
ValueRange
embora o único campo obrigatório seja values
. Se range
for especificado, ele
precisa corresponder ao intervalo no URL. Em ValueRange
, é possível especificar
dela
majorDimension
.
Por padrão, ROWS
é usado. Se COLUMNS
for especificado, cada matriz interna será
gravadas em uma coluna em vez de em uma linha.
O intervalo de entrada é usado para pesquisar dados existentes e encontrar uma "tabela" ao
desse intervalo. Os valores são anexados na próxima linha da tabela, começando com o
primeira coluna da tabela. Por exemplo, considere Sheet1
com esta aparência:
A | B | C | D | E | |
1 | x | y | z | ||
2 | x | y | z | ||
3 | |||||
4 | x | y | |||
5 | y | z | |||
6 | x | y | z | ||
7 |
Há duas tabelas na página: A1:C2
e B4:D6
. Os valores anexados
começar em B7
para todas as entradas range
a seguir:
Sheet1
, porque examinará todos os dados na planilha e determinará que a tabela emB4:D6
é a última tabela.B4
ouC5:D5
, porque ambos estão na tabelaB4:D6
.B2:D4
, porque a última tabela do intervalo éB4:D6
(apesar de ele também conter a tabelaA1:C2
).A3:G10
, porque a última tabela do intervalo éB4:D6
(apesar de começar antes e terminar depois dele).
As entradas range
a seguir não começariam a ser gravadas em B7
:
A1
começaria a ser gravado emA3
, porque isso está na tabelaA1:C2
.E4
começaria a ser gravado emE4
, porque não está em nenhuma tabela. A gravação deA4
também começaria a ser feita emA4
pelos mesmos motivos.
Além disso, você pode escolher se quer substituir os dados existentes após uma
ou insira novas linhas para os novos dados. Por padrão, a entrada substitui os dados
depois da tabela. Para gravar os novos dados em novas linhas, use o método
InsertDataOption
e especificar insertDataOption=INSERT_ROWS
.
Para saber mais sobre os limites de células e linhas no Planilhas, consulte Arquivos que você pode armazenar no Google Drive.