Nível de programação: iniciante
Duração: 10 minutos
Tipo de projeto: função personalizada
Objetivos
- Entender o que a solução faz.
- Entender o que os serviços do Google Apps Script fazem na solução.
- Configurar o script.
- Executar o script.
Sobre esta solução
Se você oferece um sistema de preços por níveis para seus clientes, essa função personalizada facilita o cálculo dos valores de desconto para seus preços no Planilhas Google.
Embora seja possível usar a função integrada SUMPRODUCT para fazer um cálculo de preços por níveis, o uso de SUMPRODUCT é mais complexo e menos flexível do que a função personalizada dessa solução.

Como funciona
Um modelo de preços por níveis significa que o custo de bens ou serviços diminui com base na quantidade comprada.
Por exemplo, imagine que você tenha dois níveis: um que varia de US $0 a US$ 500 e tem um desconto de 10%, e outro que varia de US $501 a US$ 1.000 e tem um desconto de 20%. Se o preço total para o qual você precisa calcular um desconto for de US $700, o script vai multiplicar os primeiros US $500 por 10% e os US $200 restantes por 20%, para um desconto total de US $90.
Para um determinado preço total, o script faz um loop nos níveis especificados na tabela de preços por níveis. Para cada parte do preço total que se enquadra em um nível, essa parte é multiplicada pelo valor percentual associado ao nível. O resultado é a soma do cálculo de cada nível.
Serviços do Apps Script
Esta solução usa o seguinte serviço:
- Serviço de planilha: usa o valor fornecido e calcula qual parte do valor será multiplicada pelo desconto percentual de cada nível.
Pré-requisitos
Para usar este exemplo, você precisa dos seguintes pré-requisitos:
- Uma Conta do Google (as contas do Google Workspace podem exigir a aprovação do administrador).
- Um navegador da Web com acesso à Internet.
Configurar o script
Para fazer uma cópia da planilha Função personalizada de preços por níveis, clique no botão a seguir:
O projeto do Apps Script para essa solução está anexado à planilha.
Executar o script
- Na planilha copiada, a tabela na linha 16 mostra um exemplo de cálculo de preço para um produto de software como serviço (SaaS).
- Para calcular o valor do desconto, na célula
C20, insira=tierPrice(C19,$B$3:$D$6). O preço final é atualizado na célulaC21. Se você estiver em um local que usa vírgulas decimais, talvez seja necessário inserir=tierPrice(C19;$B$3:$D$6).
Revisar o código
Para revisar o código do Apps Script para essa solução, clique em Acessar o código-fonte:
Acessar o código-fonte
Code.gs
Modificações
Você pode editar a função personalizada quantas vezes quiser para atender às suas necessidades. Para conferir uma adição opcional para atualizar manualmente os resultados da função personalizada, clique em Atualizar resultados em cache:
Atualizar resultados em cache
Ao contrário das funções integradas, o Google armazena em cache as funções personalizadas para otimizar a performance. Portanto, se você mudar algo na função personalizada, como um valor que está sendo calculado, talvez não seja possível forçar uma atualização imediatamente. Para atualizar o resultado da função manualmente, siga estas etapas:
- Adicione uma caixa de seleção a uma célula vazia clicando em Inserir > Caixa de seleção.
- Adicione a célula que tem a caixa de seleção como um parâmetro extra da função personalizada. Por exemplo, se você adicionar uma caixa de seleção à célula
D20, atualize a função na célulaC20para=tierPrice(C19,$B$3:$D$6,D20).tierPrice() - Marque ou desmarque a caixa de seleção para atualizar os resultados da função personalizada.
Colaboradores
Este exemplo é mantido pelo Google com a ajuda dos Especialistas do Google Developers.