Coluna Condicional no Power Query: Como Criar Sem Escrever Fórmulas

Para criar uma coluna condicional no Power Query sem escrever nenhum código, vá em Adicionar Coluna > Coluna Condicional, defina as condições (coluna, operador e valor de comparação) e o valor de saída para cada uma — o Power Query monta a lógica visualmente e gera o código correspondente sozinho, sem que você precise digitar uma linha sequer de linguagem M.

Você já precisou classificar linhas de uma tabela no Power Query — marcar vendas como “Acima da Meta” ou “Abaixo da Meta”, separar clientes por faixa de consumo, sinalizar pedidos atrasados — e não sabia por onde começar, porque parecia que só dava pra fazer isso escrevendo uma fórmula condicional complicada na linguagem M?

Sem uma forma visual de aplicar essa lógica, muita gente acaba desistindo de tratar esse tipo de classificação dentro do Power Query e volta pra uma coluna de fórmula SE no Excel depois que os dados já foram carregados — perdendo a vantagem de ter tudo centralizado e atualizado automaticamente na mesma consulta.

Neste artigo iremos mostrar como usar o recurso Coluna Condicional do Power Query passo a passo, com um exemplo prático de classificação de vendas, incluindo como montar várias condições em sequência e os cuidados com o tipo de dado da coluna gerada.

DOMINE EXCEL COMIGO

QUERO APRENDER EXCEL

Onde encontrar o recurso Coluna Condicional

Com a sua consulta aberta no Editor poder Query (Dados > Obter Dados > … > Transformar Dados, ou clicando duas vezes numa consulta já existente no painel Consultas e Conexões), vá até a guia Adicionar Coluna na faixa de opções e clique em Coluna Condicional. Uma janela se abre para você montar a lógica visualmente, sem precisar abrir o Editor Avançado nem escrever código M manualmente.

Montando a primeira condição

Na janela que abre, digite um nome para a nova coluna em Novo nome da coluna — por exemplo, “Classificação”. Logo abaixo, cada linha da janela representa uma cláusula condicional, com três campos: Nome da coluna (a coluna da sua tabela que será testada), Operador (maior que, menor que, é igual a, contém, entre outros) e Valor (o número, texto ou outra coluna usado na comparação). Ao lado, o campo Saída define o que aparece na nova coluna quando aquela condição é verdadeira.

Exemplo prático: classificando vendas por faixa

Imagine uma tabela com o valor de vendas de cada vendedor, e você quer criar automaticamente uma coluna de classificação: “Ótimo” para vendas acima de 10.000, “Bom” para vendas entre 5.000 e 10.000, e “Regular” para o restante.

Vendedor Vendas Classificação (gerada)
Ana 12500 Ótimo
Bruno 7200 Bom
Carla 3100 Regular

Para montar essa lógica, a primeira cláusula fica: Nome da coluna = Vendas, Operador = “é maior do que ou igual a”, Valor = 10000, Saída = “Ótimo”. Clique em Adicionar Cláusula para incluir a segunda condição: Vendas “é maior do que ou igual a” 5000, saída “Bom”. Por fim, no campo Senão, na parte de baixo da janela (que representa o valor padrão quando nenhuma condição anterior é verdadeira), digite “Regular”. Clique em OK e a coluna é criada imediatamente, já populada para todas as linhas da tabela.

A ordem das cláusulas importa

O Power Query avalia as cláusulas de cima para baixo e para na primeira que for verdadeira — exatamente como uma cadeia de SE aninhados no Excel. Por isso, no exemplo acima, a condição de “Ótimo” (vendas >= 10000) precisa vir antes da condição de “Bom” (vendas >= 5000): se a ordem fosse invertida, qualquer venda de 12.500 também seria classificada como “Bom”, porque 12.500 também é maior ou igual a 5.000 e essa cláusula seria avaliada primeiro.

Comparando com outra coluna, em vez de um valor fixo

O campo Valor de cada cláusula não precisa ser um número ou texto fixo — clicando no ícone dentro do campo, é possível trocar para Selecionar uma coluna e comparar duas colunas da própria tabela entre si. Isso é útil, por exemplo, para marcar se o valor “Realizado” está acima ou abaixo do valor “Meta” de cada linha, em vez de comparar sempre com o mesmo número fixo.

Usando outra coluna como saída

O mesmo vale para o campo Saída: em vez de digitar um texto fixo como “Ótimo”, dá para clicar no ícone e escolher Selecionar uma coluna, fazendo a nova coluna copiar o valor de outra coluna existente quando aquela condição for verdadeira — útil para, por exemplo, trazer o nome do gerente responsável apenas quando a filial bate uma determinada condição.

O tipo de dado da coluna gerada

Por padrão, a Coluna Condicional é criada sem um tipo de dado específico definido (fica como ABC/123, tipo “Qualquer”). Isso raramente causa problema quando a saída é sempre texto, mas se a sua lógica gera números ou datas em algumas cláusulas, vale conferir e ajustar manualmente o tipo da coluna depois — clicando no ícone de tipo no cabeçalho da coluna — para evitar que etapas seguintes da consulta tratem o valor como texto sem querer.

Onde fica o código gerado

Toda condição montada nessa janela vira uma etapa da consulta, visível no painel Etapas Aplicadas, e o código M correspondente pode ser conferido em Exibir > Editor Avançado. A Coluna Condicional usa por baixo dos panos uma estrutura if…then…else na linguagem M — mas o recurso existe justamente para você não precisar escrever isso manualmente, montando tudo pela interface visual.

Diferença entre Coluna Condicional e Mesclagem de Consultas

A Coluna Condicional funciona bem quando a lógica depende de comparações e faixas de valor (maior que, menor que, contém um texto). Quando o que você precisa, na verdade, é substituir um código por sua descrição — por exemplo, trocar a sigla de um estado pelo nome completo — usando uma tabela de referência com muitos pares de correspondência, a Mesclagem de Consultas (Merge) costuma ser mais prática de manter, porque adicionar um novo par não exige editar a lógica da coluna, só a tabela de referência.

Disponibilidade

O recurso Coluna Condicional está disponível no Power Query do Excel 2016 em diante, incluindo Excel 365, e também no Power Query do Power BI Desktop. No Excel para a Web, o Power Query já está disponível para consultas simples, mas com algumas limitações de conectores. O Google Sheets não tem um Power Query equivalente nativo.

Perguntas frequentes

A ordem das condições na Coluna Condicional faz diferença no resultado?

Sim — o Power Query avalia as condições de cima para baixo e para na primeira que for verdadeira, então condições mais restritivas (como uma faixa de valor mais alta) precisam vir antes de condições mais amplas que também seriam satisfeitas pelo mesmo valor.

Dá para comparar duas colunas da tabela, em vez de usar um valor fixo?

Sim, tanto no campo Valor de cada cláusula quanto no campo de Saída existe a opção de clicar no ícone dentro do campo e escolher Selecionar uma coluna, permitindo comparar ou retornar o conteúdo de outra coluna da própria tabela.

Quando usar Coluna Condicional em vez de Mesclagem de Consultas?

Use Coluna Condicional para lógicas baseadas em comparações e faixas de valor. Para substituir um código por sua descrição usando uma tabela de referência com muitos pares (um de-para), a Mesclagem de Consultas costuma ser mais fácil de manter no longo prazo.

Veja também: De Para no Excel com Power Query, que usa a Coluna Condicional como alternativa mais simples para tabelas de mapeamento pequenas — este artigo aqui é o guia completo do recurso em si, para qualquer tipo de classificação condicional. Veja também: O Que É o Power Query no Excel e Como Começar a Usar.

Compartilhe ou Comente

Se você curtiu esse artigo aonde mostramos como criar uma coluna condicional no Power Query pela interface visual, sem escrever nenhum código, compartilhe com as suas redes sociais e não se esqueça de deixar um comentário aqui embaixo caso você tenha ficado com alguma dúvida.

Você já usou o Power Query para classificar dados automaticamente? Prefere montar essa lógica com Coluna Condicional ou ainda usa uma fórmula SE depois que os dados chegam no Excel? Conta para nós nos comentários!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *