Skip to main content
case testa condições em ordem e devolve o resultado da primeira que for verdadeira. Serve para criar faixas, dar nome a códigos e fazer contas que dependem de uma condição.

Sintaxe

Os pares condição, resultado se repetem quantas vezes for preciso. if é o mesmo que case.

Exemplos

Os exemplos usam esta tabela de amostra. As colunas são fictícias.

Faixas de espera

Numa coluna personalizada:
A ordem importa: 45 também é maior que 10, mas a primeira condição verdadeira é a que vale. Agrupe por essa coluna em Resumir para contar os atendimentos de cada faixa.

Dar nome a códigos

O padrão é a própria coluna: o setor sem nome definido aparece como está.

Conta condicional

Dentro de uma agregação, case escolhe o que entra na conta:
Resultado: 1020, a soma dos valores do SUS. SumIf([valor], [convenio] = "SUS") faz a mesma conta.

Limitações

  • Todos os resultados precisam ser do mesmo tipo: todos textos, todos números ou todos datas. case([minutos_espera] > 30, "longa", 0) mistura texto e número, e a consulta falha.
  • A linha em que a condição dá vazio (a coluna comparada está vazia) segue para a próxima condição, até o padrão.

Relacionadas

  • if: o mesmo que case.
  • coalesce: o primeiro valor que não está vazio.
  • CountIf e SumIf: contagem e soma com critério, sem case.
  • Em SQL, CASE WHEN … THEN … ELSE … END. Na planilha, SES.