No artigo de hoje, o dataholic Rafael Barbosa fez questão de deixar bem explicado o processo de acabar com as colunas duplicadas no Power Query. Vem conferir!
![](https://static.wixstatic.com/media/efe4c3_9c998915a7804e1983099dbbb0debfcb~mv2.png/v1/fill/w_740,h_324,al_c,q_85,enc_auto/efe4c3_9c998915a7804e1983099dbbb0debfcb~mv2.png)
Criar colunas dentro do Power Query é muito mais performático do que utilizar colunas calculadas quando possível, mesmo assim é mais fácil você encontrar uma solução na internet utilizando DAX em uma coluna calculada do que utilizando linguagem M no Power Query. Neste caso quero contar na coluna "Equipamento superior" a quantidade de códigos que existem na minha tabela para identificar valores duplicados e qual a quantidade.
1° - Etapa addCount, agrupa a coluna que você quer contar os itens duplicados com Table.Group e adiciona a coluna "Duplicado", que vai informar a quantidade de vezes que aquele item se repete na tabela.
addCount =
Table.Group(
Etapa_Anterior, //Chama a etapa = Etapa_Anterior
{"Equipamento superior"},//Seleciona a coluna"Equipamento superior"
{{"Duplicado", Table.RowCount, type number}}//Quantidade de
duplicados
)
![](https://static.wixstatic.com/media/efe4c3_6cc7c12c977b47fc8dc6d8782e75a4ac~mv2.png/v1/fill/w_740,h_212,al_c,q_85,enc_auto/efe4c3_6cc7c12c977b47fc8dc6d8782e75a4ac~mv2.png)
2° - Etapa Mesclar, agora vamos mesclar a tabela do passo anterior na nossa tabela. Como o nome das colunas utilizadas como chave na hora de mesclar tem o mesmo nome o JoinKind.Inner, traz somente as outras colunas eliminando uma etapa de expandir.
Mesclar =
Table.Join(
Etapa_Anterior, //Chama a etapa = Etapa_Anterior
{"Equipamento superior"}, //Seleciona a coluna"Equipamento superior"
addCount, //Chama a etapa = addCount
{"Equipamento superior"}, //Seleciona a coluna"Equipamento superior"
JoinKind.Inner //Mesclagem do tipo InnerJoin
)
![](https://static.wixstatic.com/media/efe4c3_12f1031b1c944fc081e44c6af2b99d21~mv2.png/v1/fill/w_740,h_273,al_c,q_85,enc_auto/efe4c3_12f1031b1c944fc081e44c6af2b99d21~mv2.png)
Ou podemos juntar tudo na mesma etapa de duas formas:
Mesclar =
Table.Join(
Etapa_Anterior,
{"Equipamento superior"},
Table.Group(
Etapa_Anterior,
{"Equipamento superior"},
{{"Duplicado", Table.RowCount, type number}}
),
{"Equipamento superior"},
JoinKind.Inner
)
O modo é utilizando o let in, comprando com DAX o let seria como o VAR e o in o RETURN, com isso podemos criar sub etapas dentro de uma etapa, assim fica mais fácil de entender o que foi feito, além de ser um bom modo de ocultar etapas auxiliares. Para baixar o exemplo do artigo clique aqui.
let
addCount =
Table.Group(
Etapa_Anterior,
{"Equipamento superior"},
{{"Duplicado", Table.RowCount, type number}}
)
in
Table.Join(
Etapa_Anterior,
{"Equipamento superior"},
addCount,
{"Equipamento superior"},
JoinKind.Inner
)
![](https://static.wixstatic.com/media/efe4c3_0862f3c378744557beb011022d395d10~mv2.png/v1/fill/w_740,h_94,al_c,q_85,enc_auto/efe4c3_0862f3c378744557beb011022d395d10~mv2.png)
Ou se quiser visualizar somente as linhas duplicadas pode utilizar a opção "Manter Duplicados" em Manter Linhas o Power Query vai filtrar somente as linhas duplicadas.
![](https://static.wixstatic.com/media/efe4c3_12f8cb1f2c0546529c7b2d7e69af0cb1~mv2.png/v1/fill/w_740,h_154,al_c,q_85,enc_auto/efe4c3_12f8cb1f2c0546529c7b2d7e69af0cb1~mv2.png)
Se esse passo a passo foi útil para você curta e nos diga como podemos ajudar em outras situações. Compartilhe com um amigo que também esteja precisando de uma ajudinha!💙😍