Ir para conteúdo
  • 0

Tratamento de dados no Power Query


Jeff
Ir para solução Solucionado por Jeff ,

Pergunta

  • Alunos

Olá pessoal. 
Eu tenho um xls de fluxo de caixa onde ela dispoe unidades de negócios nas linhas com subtotais por UN e sublinhas com suas respectivas classificações e também colunas em pares para cada mês do ano sendo forecast e actual. 

Usei como referência uma live do Leo que tratava uma base muito parecida com a minha. E deu muito certo, exceto por 1 ponto que eu gostaria de discutir com vocês.

[Live #62] Usando o PODER do Power Query para Automatizar o Tratamento de Dados

Na minutagem 1:38:15 ele faz um pivot e eu repliquei esta mesma etapa na minha base. Mas o resultado foi diferente.

A minha base que estava assim:
image.png.9bb99340e46a6bf38bf786c18e6bb85d.png
 

Depois do pivot ficou assim:
image.png.8b4e797f529cb25c8540e67f84c9e1d0.png

Porém eu esperava que os valores de forecast e actual ficassem na mesma linha.

Não sei o que aplicar para o power query juntar as linhas.

Alguém me dá essa mão?

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Pessoal,

Não acredito que tenha sido a solução mais performática mas consegui resolver sozinho rs...

Eu mesclei as colunas de forecast e actual, na sequencia agrupei todas as outras colunas sem nenhuma operação.
Depois fiz um select columns trazendo a coluna forecast=actual e na sequencia coloquei a table.tolist.
Extrai os valores e na sequencia tratei dividindo as colunas.

 

 #"Colunas Mescladas2" = Table.CombineColumns(Table.TransformColumnTypes(#"Colunas Removidas2", {{"Forecast", type text}, {"Actual", type text}}, "pt-BR"),{"Forecast", "Actual"},Combiner.CombineTextByDelimiter("=", QuoteStyle.None),"Forecast=Actual"),
    #"Linhas Agrupadas" = Table.Group(#"Colunas Mescladas2", {"CashFlow", "UN", "Classificacao", "Data"}, {{"Contagem", each _, type table [CashFlow=text, UN=nullable text, Classificacao=nullable text, Data=nullable text, Forecast=number, Actual=number]}}),
    #"Personalização Adicionada" = Table.AddColumn(#"Linhas Agrupadas", "Personalizar", each Table.SelectColumns([Contagem],{"Forecast=Actual"})),
    #"Personalização Adicionada1" = Table.AddColumn(#"Personalização Adicionada", "Personalizar.1", each Table.ToList([Personalizar])),
    #"Valores Extraídos" = Table.TransformColumns(#"Personalização Adicionada1", {"Personalizar.1", each Text.Combine(List.Transform(_, Text.From), ""), type text}),
    #"Valor Substituído1" = Table.ReplaceValue(#"Valores Extraídos","""","",Replacer.ReplaceText,{"Personalizar.1"}),
    #"Dividir Coluna por Delimitador2" = Table.SplitColumn(#"Valor Substituído1", "Personalizar.1", Splitter.SplitTextByDelimiter("=00=", QuoteStyle.Csv), {"Personalizar.1.1", "Personalizar.1.2"}),
    #"Colunas Removidas3" = Table.RemoveColumns(#"Dividir Coluna por Delimitador2",{"Contagem", "Personalizar"}),
    #"Colunas Renomeadas" = Table.RenameColumns(#"Colunas Removidas3",{{"Personalizar.1.1", "Forecast"}, {"Personalizar.1.2", "Actual"}})
in
    #"Colunas Renomeadas"

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...