Módulo 3: Power Query: o ETL do Power BI

Aula 3 de 4

Unpivot, pivot e o formato analítico

Como transformar a planilha 'de gerente' (uma coluna por mês) em tabela pronta para análise.

16 minutos de leitura


A planilha que a área te manda quase sempre tem uma coluna por mês: Produto | Jan | Fev | Mar... Isso é ótimo para ler e péssimo para analisar. O Power BI quer o formato longo: Produto | Mês | Valor.

Formato largo (origem)Formato longo (analítico)
Produto A | 100 | 120 | 90Produto A | Jan | 100
Produto B | 80 | 95 | 110Produto A | Fev | 120
Uma coluna nova por mês novoNenhuma coluna nova: só linhas

Fazendo o unpivot

  1. 1Selecione as colunas que devem permanecer (Produto, Categoria).
  2. 2Clique com o botão direito → 'Transformar outras colunas em linhas' (Unpivot Other Columns).
  3. 3Renomeie 'Atributo' para 'Mês' e 'Valor' para 'Receita'.
  4. 4Converta o mês em data de referência, se precisar relacionar com o calendário.

Outras transformações que você vai usar toda semana

  • Dividir coluna: por delimitador, por número de caracteres, por transição de maiúscula/minúscula.
  • Extrair: texto antes/depois/entre delimitadores — ótimo para códigos compostos como 'SP-VENDAS-0032'.
  • Preenchimento para baixo: resolve relatórios exportados com a categoria escrita só na primeira linha do grupo.
  • Agrupar por: cria uma tabela resumida (útil para tabelas de apoio e agregações).
  • Colunas de exemplo: você digita o resultado desejado e o Power Query descobre a fórmula.
  • Transpor: inverte linhas e colunas — use com cuidado, costuma ser sintoma de origem mal estruturada.
Linguagem MUnpivot resistente a colunas novas
let    Fonte = tbOrcamento,    Unpivot = Table.UnpivotOtherColumns(        Fonte,        {"CentroCusto", "ContaContabil"},        "MesTexto",        "Valor"    ),    MesData = Table.AddColumn(Unpivot, "Competencia",        each Date.FromText("01-" & [MesTexto], [Format="dd-MMM-yyyy", Culture="pt-BR"]),        type date)in    MesData

Exercício prático

Monte uma planilha com Produto nas linhas e 6 meses nas colunas. Faça o unpivot com 'outras colunas', converta o mês em data e depois acrescente um 7º mês na origem para confirmar que a consulta absorve sozinha.