Forum Discussion

Ramon_CN's avatar
Ramon_CN
Regular Visitor
2 years ago
Solved

Table column to rows

Hello wise Friends,

I have the following input table:

Ref ConjuntCodi iniCodi Fi
Cj1iniFi
Cj2iniFi

And would like to transform it in Power Query with the following output

Ref ConjuntCodi
Cj1Ini
Cj1Fi
Cj2ini
Cj2Fi

 

The aim is to append this table to a previous one and add delimiter rows at the start and end of a collection of groups by  Ref. Conjunt Column.  

Although it might be very simple, I've tried my best by unpivoting in different ways, but with no success.

Any help would be appreciated. 

Thanks, folks.  

 

 

  • let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45Wcs4yVNJRyszLBJJumUqxOiAhIxShWAA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Ref Conjunt" = _t, #"Codi ini" = _t, #"Codi Fi" = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Ref Conjunt", type text}, {"Codi ini", type text}, {"Codi Fi", type text}}),
        #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Ref Conjunt"}, "Attribute", "Codi"),
        #"Removed Other Columns" = Table.SelectColumns(#"Unpivoted Other Columns",{"Ref Conjunt", "Codi"})
    in
        #"Removed Other Columns"

    How to use this code: Create a new Blank Query. Click on "Advanced Editor". Replace the code in the window with the code provided here. Click "Done".

2 Replies

  • let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45Wcs4yVNJRyszLBJJumUqxOiAhIxShWAA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Ref Conjunt" = _t, #"Codi ini" = _t, #"Codi Fi" = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Ref Conjunt", type text}, {"Codi ini", type text}, {"Codi Fi", type text}}),
        #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Ref Conjunt"}, "Attribute", "Codi"),
        #"Removed Other Columns" = Table.SelectColumns(#"Unpivoted Other Columns",{"Ref Conjunt", "Codi"})
    in
        #"Removed Other Columns"

    How to use this code: Create a new Blank Query. Click on "Advanced Editor". Replace the code in the window with the code provided here. Click "Done".

    • Ramon_CN's avatar
      Ramon_CN
      Regular Visitor

      Thanks a lot lbendlin 

      It worked exactly as I wanted.

      A blank Query as a starting point with your code. Then Change the data origin

      And Great! 🙂