Continuando com a série de posts sobre Google Apps Script vamos apresentar uma ferramenta (código) que pode ser útil e muito legal para quem utiliza Spreadsheet do Google e precisa automatizar o envio de seus emails, criando a function sendEmails
.
Algumas das utilidades da planilha serão:
Controle de Assinaturas
Se você assina ou vende assinatura de um determinado serviço, poderá colocar um alerta para uma determinada data ou prazo de encerramento da assinatura;
Controle de Vencimentos
Possibilita o controle das datas de vencimento de suas vendas, enviando email para seus credores numa determinada data ou prazo pré-determinado;
Controle Interno
Enviará um email para sua equipe com um alerta, assim que for identificado que um projeto esteja próximo ao seu prazo de entrega ou atrasado.
Entre outras.
Antes de começar o código, vamos criar uma tabela simples com 6 colunas conforme exemplo abaixo:
- Coluna 1 ou A (email adress), na programação é comum chamar a coluna pelo numeral, coloque a lista de emails a qual deseja direcionar a mensagem;
- Coluna 2 (subject) será o título do email;
- Coluna 3 (message) coloque a mensagem que vai aparecer no corpo do email;
- Coluna 4 (dias para expirar) ficará os dias que faltam para expirar ou vencer uma determinada assinatura;
- Coluna 5 (dias de contrato) os dias de contrato firmado;
- Coluna 6 (início da assinatura) a data de início da assinatura.
Na célula “H2” temos a fórmula “countif”
que conta o número de linhas ou de clientes da tabela. A função countif
recebe dois parâmetros. O intervalo a ser verificado e a expressão de contagem. No caso “<>” significa diferente de branco ou nulo. Ao final subtraímos 1 do resultado para descontar a primeira linha com os rótulos das colunas:
Detalhe da coluna 3 (message) é que podemos automatizar o número de dias a expirar dentro dela, conforme exemplo abaixo:
Exemplo de texto/fórmula:
Na coluna 4 (dias para expirar), colocamos a fórmula utilizando a função “today()”
. Por exemplo, se você desejar enviar um alerta para um cliente avisando que a assinatura dele acaba em alguns dias, faremos da seguinte forma:
Exemplo para 180 dias de assinatura. O cliente será avisado quando estiver faltando 20 dias para o fim de sua assinatura.
Feito isso…
Vamos programar!!!
1. Abra o editor de scripts.
2. Após aberto, salve um nome para seu projeto.
3. Na primeira parte do código, vamos criar a função “sendEmails ()”
e ativar a planilha a qual vamos utilizar, definir de qual linha será a primeira a ser processada e o número de linhas que iremos utilizar. O número de linhas é definido pela variável “numRows”
que é selecionada como a célula “H2”, que sua vez, contém a fórmula “countif”
e é representada no código pelo “sheet.getRange(2, 8)”
.
4. Usando a função “for”
vamos buscar os valores dentro da planilha.
5. A função “MailApp.sendEmail(emailAdress, subject, message)”
enviará os emails para os destinatários inclusos na coluna 1 (A) da planilha, o mesmo acontecerá com o título (subject) e a mensagem (message) no corpo do texto.
Abaixo o código por completo:
Podemos acrescentar um botão para acionar o código com mais agilidade, sem precisar ir ao editor de scripts. Você encontrará como fazer no primeiro post da série Google Apps Scripts.
E, por fim, é possível criar uma função condicional usando a variável “expire” como por exemplo: definir que somente serão enviados os emails se o cliente estiver com a assinatura vencida:
Ou quando faltar menos de 30 dias para vencer a assinatura:
E assim por diante.
Aqui na Taller nós amamos números e gostamos de automatizar ao máximo nosso trabalho e espero que com esse conteúdo possa ajudar você a ter mais tempo para fazer coisas mais importantes ainda.
Tem alguma dúvida? Quer aprender algo novo com Google Spreadsheet? É só escrever nos comentários!
—
Para mais informações sobre essa funcionalidade do GAS você pode acessar aqui.
O que acha de ter esse conteúdo e muito mais em um eBook completo com outros tutoriais incríveis?