Forum Discussion

Hikmet_JCI's avatar
Hikmet_JCI
Helper I
3 years ago
Solved

make rows into columns

Hi, everyone

need some help

 

I have a table where a column needs to be converted to Power Query
what is the best solution?

from like this

 

in like this

thanks

  • hI

     

    BASE:three

     

    Output result:

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45W8tY1NDI2MTVTitWJVvIt0ivOrCgBsw1NrEwMISwjK0Moy9TKyACN5YJmgFtmWSpEiRkRBsQCAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [A = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"A", type text}}),
        #"Added Custom" = Table.AddColumn(#"Changed Type", "Anew", each if Text.Middle([A],1,1)="-" then [A] else null),
        #"Added Custom1" = Table.AddColumn(#"Added Custom", "Bnew", each if Text.Middle([A],0,2)="Mr" then [A] else null),
        #"Added Custom2" = Table.AddColumn(#"Added Custom1", "Cnew", each if Text.Middle([A],2,1)=":" then [A] else null),
        #"Filled Down" = Table.FillDown(#"Added Custom2",{"Anew", "Bnew"}),
        #"Filtered Rows" = Table.SelectRows(#"Filled Down", each ([Cnew] <> null)),
        #"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"A"})
    in
        #"Removed Columns"

     

     


    Best Regards
    Lucien

1 Reply

  • v-luwang-msft's avatar
    v-luwang-msft
    Community Support

    hI

     

    BASE:three

     

    Output result:

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45W8tY1NDI2MTVTitWJVvIt0ivOrCgBsw1NrEwMISwjK0Moy9TKyACN5YJmgFtmWSpEiRkRBsQCAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [A = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"A", type text}}),
        #"Added Custom" = Table.AddColumn(#"Changed Type", "Anew", each if Text.Middle([A],1,1)="-" then [A] else null),
        #"Added Custom1" = Table.AddColumn(#"Added Custom", "Bnew", each if Text.Middle([A],0,2)="Mr" then [A] else null),
        #"Added Custom2" = Table.AddColumn(#"Added Custom1", "Cnew", each if Text.Middle([A],2,1)=":" then [A] else null),
        #"Filled Down" = Table.FillDown(#"Added Custom2",{"Anew", "Bnew"}),
        #"Filtered Rows" = Table.SelectRows(#"Filled Down", each ([Cnew] <> null)),
        #"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"A"})
    in
        #"Removed Columns"

     

     


    Best Regards
    Lucien