Dinamizar colunas

No Power Query, é possível criar uma tabela que contém um valor agregado para cada valor exclusivo em uma coluna. O Power Query agrupa cada valor exclusivo, faz um cálculo de agregação para cada um deles e dinamiza a coluna em uma nova tabela.

Diagrama de colunas dinâmicas.

Diagrama mostrando uma tabela à esquerda com uma coluna e linhas em branco. Uma coluna Atributos contém nove linhas com A1, A2 e A3 repetidos três vezes. Uma coluna Valores contém, de cima para baixo, valores V1 a V9. Com as colunas dinâmicas, uma tabela à direita contém uma coluna e linhas em branco, os valores de Atributos A1, A2 e A3 como cabeçalhos de coluna, a coluna A1 que contém os valores V1, V4 e V7, a coluna A2 que contém os valores V2, V5 e V8 e a coluna A3 que contém os valores V3, V6 e V9.

Imagine uma tabela como a da imagem a seguir.

Tabela original da coluna dinâmica.

Tabela que contém uma coluna País como o tipo de dados Texto, uma coluna Data definida com o tipo de dados Dados e uma coluna Valor definida como o tipo de dados Número inteiro. A coluna País contém EUA nas três primeiras linhas, Canadá nas três linhas seguintes e Panamá nas três últimas linhas. A coluna Data contém 1/6/2020 na primeira, quarta e sétima linhas, 1/7/2020 na segunda, quinta e oitava linhas e 1/8/2020 na terceira, sexta e nona linhas.

Esta tabela contém valores por país e data em uma tabela simples. Neste exemplo, você transformará essa tabela na tabela que tem a coluna de data dinâmica, conforme mostrado na imagem a seguir.

Tabela final de colunas dinâmicas.

Tabela que contém uma coluna País definida no tipo de dados Texto e colunas 1/6/2020, 1/7/2020 e 1/8/2020 definidas com o tipo de dados Número inteiro. A coluna País contém EUA na linha 1, Canadá na linha 2 e Panamá na linha 3.

Observação

Durante a operação de colunas dinâmicas, o Power Query classificará a tabela com base nos valores encontrados na primeira coluna, no lado esquerdo da tabela, em ordem crescente.

Dinamizar uma coluna

  1. Selecione a coluna que você deseja tornar dinâmica.

  2. Na guia Transformar, no grupo Qualquer coluna, selecione Dinamizar coluna.

    Comando Dinamizar coluna.

  3. Na caixa de diálogo Dinamizar coluna, na lista Coluna de valor, selecione Valor.

    Caixa de diálogo Colunas dinâmicas.

    Por padrão, o Power Query tentará fazer uma soma como a agregação, mas é possível selecionar a opção Avançado para ver outras agregações disponíveis.

    Agregações de colunas dinâmicas.

As opções disponíveis são:

  • Não agregar
  • Contagem (tudo)
  • Contagem (não está em branco)
  • Mínimo
  • Máximo
  • Median
  • Soma
  • Média

Colunas dinâmicas que não podem ser agregadas

É possível dinamizar colunas sem agregação ao trabalhar com colunas que não podem ser agregadas ou quando a agregação não é necessária para o que você está tentando fazer. Por exemplo, imagine uma tabela como a imagem a seguir, que tem País, Posição e Produto como campos.

Coluna dinâmica sem agregação.

A tabela com a coluna País contém EUA nas três primeiras linhas, Canadá nas três linhas seguintes e Panamá nas três últimas linhas. A coluna Posição contém Primeiro Lugar na primeira, quarta e sétima linhas, Segundo Lugar na segunda, quinta e oitava linhas e Terceiro Lugar na terceira, sexta e nona linhas.

Digamos que você queira dinamizar a coluna Posição nesta tabela para ter seus valores como novas colunas. Para os valores dessas novas colunas, você usará os valores da coluna Produto. Selecione a coluna Posição e clique em Dinamizar coluna para dinamizar essa coluna.

Tabela com a coluna Posições selecionada e mostrando o comando Dinamizar colunas na guia Transformar.

Na caixa de diálogo Dinamizar coluna, selecione a coluna Produto como a coluna de valor. Clique no botão de opção Avançado na caixa de diálogo Dinamizar colunas e selecione Não agregar.

Caixa de diálogo Coluna dinâmica com a função Agregar valor definida como Não agregar.

O resultado dessa operação produzirá o resultado mostrado na imagem a seguir.

Resultado da dinamização de colunas sem agregação.

Tabela que contém as colunas País, Primeiro Lugar, Segundo Lugar e Terceiro Lugar, com a coluna País contendo o Canadá na linha 1, Panamá na linha 2 e EUA na linha 3.

Erros ao usar a opção Não agregar

A opção Não agregar funciona capturando um único valor para que a operação dinâmica seja colocada como o valor para a interseção do par de colunas e linhas. Por exemplo, digamos que você tenha uma tabela como a da imagem a seguir.

Tabela inicial de exemplo de erro de dinamização de coluna sem agregação.

Tabela com colunas País, Data e Valor. A coluna País contém EUA nas três primeiras linhas, Canadá nas três linhas seguintes e Panamá nas três últimas linhas. A coluna Data contém uma data de 1/06/2020 em todas as linhas. A coluna de valor contém vários números inteiros entre 20 e 785.

Você dinamizará essa tabela usando a coluna Data e usar os valores da coluna Valor. Como essa dinamização faria com que a tabela tivesse apenas os valores de País como linhas e de Datas como colunas, você obteria um erro para cada valor de célula única porque haveria várias linhas para cada combinação de País e Data. O resultado da operação Dinamizar coluna produzirá os resultados mostrados na imagem a seguir.

Tabela final de exemplo de erro de dinamização de coluna sem agregação.

O painel do Editor do Power Query mostrando uma tabela com colunas País e 1/6/2020. A coluna País contém Canadá na primeira linha, Panamá na segunda e EUA na terceira. Todas as linhas na coluna 1/6/2020 contêm Erros. Na tabela há outro painel que mostra o erro de expressão com a mensagem "Há muitos elementos na enumeração para concluir a operação".

Observe a mensagem de erro "Expression.Error: havia muitos elementos na enumeração para concluir a operação". Esse erro ocorre porque a operação Não agregar espera apenas um único valor para a combinação de país e data.