Google Planilhas e Apps Script: 5 automações simples para empresas
Aprenda a usar o Apps Script no Google Planilhas para enviar lembretes, avisar estoque baixo e organizar dados da empresa, com exemplos de código e cuidados.
Neste artigo
O Apps Script é o recurso do Google que permite programar pequenas automações dentro do Google Planilhas, do Gmail e do Google Formulários, sem contratar servidor nem pagar ferramenta extra. Para uma pequena empresa que já controla clientes, estoque ou cobranças em planilha, ele resolve tarefas repetitivas como enviar um lembrete, avisar que um produto está acabando ou copiar dados de uma aba para outra.
Este guia mostra cinco automações que você consegue montar em poucos minutos, como ativar o editor, como criar o gatilho que dispara o script sozinho e quais cuidados tomar com dados de clientes.
Como abrir o Apps Script e rodar o primeiro código
Abra a planilha e vá em Extensões > Apps Script. O editor abre em uma nova aba, já ligado àquela planilha. Cole o código dentro da função, salve e clique em Executar. Na primeira vez, o Google pede autorização para o script acessar a planilha (e o e-mail, se ele enviar mensagens). Leia o que está sendo pedido antes de aceitar.
Para que o script rode sem você apertar nada, crie um gatilho: no editor, abra o ícone de relógio (Acionadores) e escolha quando executar. As opções mais usadas são por tempo (todo dia, em um horário), ao editar a planilha e ao enviar um formulário.
1. Lembrete de cobrança por e-mail
Ideal para quem controla mensalidades ou boletos em planilha. Imagine uma aba com as colunas A (nome), B (e-mail), C (vencimento) e D (status, com “Pago” ou “Em aberto”). O script abaixo avisa quem vence hoje e ainda não pagou:
function lembrarVencimentos() {
const aba = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Cobrancas');
const linhas = aba.getDataRange().getValues();
const hoje = new Date();
hoje.setHours(0, 0, 0, 0);
for (let i = 1; i < linhas.length; i++) {
const [nome, email, vencimento, status] = linhas[i];
const data = new Date(vencimento);
data.setHours(0, 0, 0, 0);
if (status === 'Em aberto' && data.getTime() === hoje.getTime()) {
MailApp.sendEmail(email, 'Lembrete de pagamento',
'Olá, ' + nome + '. Sua cobrança vence hoje. Se já pagou, desconsidere.');
}
}
}
Crie um gatilho por tempo para rodar todo dia de manhã. A primeira linha da planilha é o cabeçalho, por isso o laço começa em 1. Se a sua empresa já usa cobrança recorrente, veja também nosso guia sobre o Pix Automático para empresas.
2. Alerta de estoque baixo
Com uma aba “Estoque” (A: produto, B: quantidade, C: mínimo), o script junta os itens abaixo do mínimo em uma única mensagem para você:
function avisarEstoqueBaixo() {
const aba = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Estoque');
const linhas = aba.getDataRange().getValues();
const baixos = [];
for (let i = 1; i < linhas.length; i++) {
const [produto, qtd, minimo] = linhas[i];
if (qtd < minimo) baixos.push(produto + ' (' + qtd + ' un.)');
}
if (baixos.length > 0) {
MailApp.sendEmail(Session.getActiveUser().getEmail(),
'Estoque baixo', 'Repor:\n' + baixos.join('\n'));
}
}
Note que o aviso sai em um só e-mail, e não um por produto. Isso evita lotar a caixa de entrada. Rode todo dia com gatilho por tempo.
3. Marcar a data de última atualização
Muitas planilhas compartilhadas viram bagunça porque ninguém sabe quando uma linha foi mexida. Um gatilho “ao editar” resolve:
function onEdit(e) {
const aba = e.range.getSheet();
if (aba.getName() !== 'Pedidos') return;
aba.getRange(e.range.getRow(), 6).setValue(new Date());
}
Aqui, qualquer edição na aba “Pedidos” grava a data e a hora na coluna F da mesma linha. A função onEdit é um gatilho simples: funciona sem criar acionador, mas não pode enviar e-mail nem acessar outros serviços do Google. Para isso, é preciso um acionador instalável.
4. Resposta automática a um formulário
Se você recebe pedidos de orçamento por um Google Formulário, dá para confirmar o recebimento. No editor do Apps Script do formulário ou da planilha de respostas, crie um acionador “ao enviar o formulário” ligado a esta função:
function confirmarPedido(e) {
const resposta = e.namedValues;
const email = resposta['E-mail'][0];
const nome = resposta['Nome'][0];
MailApp.sendEmail(email, 'Recebemos seu pedido',
'Olá, ' + nome + '. Recebemos sua solicitação e retornaremos em breve.');
}
Os nomes entre colchetes precisam ser idênticos aos títulos das perguntas do formulário. Se mudar a pergunta, ajuste o código.
5. Resumo semanal de vendas
Se as vendas são lançadas em uma aba “Vendas” (A: data, B: valor), um segundo script soma a semana e grava o total em outra aba:
function resumoSemanal() {
const planilha = SpreadsheetApp.getActiveSpreadsheet();
const vendas = planilha.getSheetByName('Vendas').getDataRange().getValues();
const limite = new Date();
limite.setDate(limite.getDate() - 7);
let total = 0;
for (let i = 1; i < vendas.length; i++) {
if (new Date(vendas[i][0]) >= limite) total += Number(vendas[i][1]);
}
planilha.getSheetByName('Resumo').appendRow([new Date(), total]);
}
Cada execução acrescenta uma linha com a data e o total dos últimos sete dias, formando um histórico que você pode transformar em gráfico. Rode com gatilho semanal.
Quando a planilha deixa de ser suficiente
Apps Script é ótimo para volumes pequenos e processos simples, mas tem limites. O Google impõe cotas diárias de e-mails e de tempo de execução, que variam conforme o tipo de conta (gratuita ou Workspace) e mudam com o tempo. Consulte as cotas atuais na documentação do Google antes de depender do script para algo crítico.
Considere migrar para um sistema de gestão ou uma ferramenta de integração quando:
- várias pessoas editam ao mesmo tempo e os dados começam a conflitar;
- a planilha fica lenta ou passa de dezenas de milhares de linhas;
- o processo envolve pagamento, nota fiscal ou dados sensíveis;
- ninguém na equipe consegue manter o código quando quem o escreveu sai.
Para decidir o que vale automatizar primeiro, use a conta de frequência, tempo gasto e chance de erro que explicamos em 10 tarefas que toda pequena empresa pode automatizar.
Boas práticas para não ter dor de cabeça
- Comente o código com uma linha explicando o que cada função faz.
- Use nomes de abas e colunas fixos e evite renomeá-los sem revisar os scripts.
- Evite e-mails em duplicidade: marque a linha (por exemplo, com “Enviado” em uma coluna) e ignore as marcadas.
- Olhe o histórico de execuções no painel do Apps Script para descobrir falhas.
- Guarde uma cópia de segurança da planilha antes de alterar scripts.
Resumo
- O Apps Script fica em Extensões > Apps Script e automatiza tarefas no Google Planilhas, Gmail e Formulários.
- Um gatilho (por tempo, edição ou envio de formulário) faz o script rodar sozinho.
- Cinco usos práticos: lembrete de cobrança, alerta de estoque, data de atualização, resposta a formulário e resumo semanal.
- Sempre teste em uma cópia e confira as cotas atuais do Google antes de depender do script.
- Quando houver muitos usuários, dados sensíveis ou volume alto, migre para um sistema de gestão.
Fontes consultadas