Capítulo 3 Estudo de caso: organizar a tabela de vendas do mês ・ MISSÃO 11

Missão 11: Escrever a coluna de resultado de uma vez (setValues)

📋 Lista de missões

Tarefa

Escreva "Grande" na categoria de cada linha com valor a partir de 100.000. Em vez de escrever linha por linha, leia a coluna de uma vez e escreva de uma vez.

Vendas de outubro - Planilhas Google
Vendas de outubro

Para praticar, a tabela volta ao estado inicial antes de cada execução (uma planilha de verdade não volta. As mudanças de um script às vezes podem ser desfeitas com Ctrl+Z, mas não todas de uma vez).

Apps ScriptProjeto sem títuloImplantar ▾
function markLarge() {
const sheet = SpreadsheetApp.getActiveSheet();
const lastRow = sheet.getLastRow();
const amounts = sheet.getRange(2, 4, lastRow - 1, 1).getValues();
const labels = amounts.map((row) => [row[0] >= 100000 ? 'Grande' : '']);
sheet.getRange(2, 5, , 1).(labels);
}
Ctrl+S: salvar · Ctrl+R: executar (editor) · F5: reabrir

Capítulo 3 ・ MISSÃO 11

Escrever a coluna de resultado de uma vez (setValues)

Escreva "Grande" na categoria de cada linha com valor a partir de 100.000. Em vez de escrever linha por linha, leia a coluna de uma vez e escreva de uma vez.

Agora
Objetivo

Lendo o código

sheet.getRange(2, 4, lastRow - 1, 1).getValues();
Lê de uma vez lastRow - 1 linhas e 1 coluna (a dos valores), a partir da linha 2, coluna 4.
amounts.map((row) => [row[0] >= 100000 ? 'Grande' : '']);
Monta uma matriz com "Grande" para as linhas a partir de 100.000 e vazia para as outras. condição ? A : B é um jeito de escrever if em uma linha.
sheet.getRange(2, 5, labels.length, 1).setValues(labels);
Escreve labels de uma vez na coluna E, com tantas linhas quanto labels tem.

Ler de uma vez com getValues, converter linha por linha com map e escrever de uma vez com setValues. É mais rápido que célula por célula; nem milhares de linhas fazem você esperar. Se o intervalo e a matriz tiverem números de linhas diferentes, aparece o erro "The number of rows in the data does not match …".

Como começar no GAS e o código mais usado estão em um artigo.O que é GAS? Como começar e código mais usado

O código que você escreve roda em um espaço isolado dentro desta página. Ele não alcança fora da página nem outros sites.

* Esta é uma simulação do comportamento do Planilhas Google e do Apps Script e pode diferir em parte do original.

* Planilhas Google é uma marca da Google LLC. Este site não tem relação com o Google.