Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Learn from the best! Meet the four finalists headed to the FINALS of the Power BI Dataviz World Championships! Register now

Reply
JB
Helper II
Helper II

Extract and Pivot Text String Column

Hello, how would I go about turning the table on the left into the table on the right? Is there a way to extract the values from a cell and turn them into new rows? 

Many thanks. 

JB_0-1679317396905.png

 

1 ACCEPTED SOLUTION
jennratten
Super User
Super User

Hello - yes, this can be done by splitting the fruits column into new rows, like this:

SCRIPT

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WciwoyEkt1lEISE0sglDJGanFSjpKxkqxOtFKTol5QAiUcM5Pzs8rLQEpycxLTQTrAqoyUYqNBQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Fruits = _t, Quantity = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Fruits", type text}, {"Quantity", Int64.Type}}),
    #"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(#"Changed Type", {{"Fruits", Splitter.SplitTextByDelimiter(", ", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Fruits"),
    #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Fruits", type text}})
in
    #"Changed Type1"

RESULT

jennratten_0-1679317858373.png

 

View solution in original post

3 REPLIES 3
jennratten
Super User
Super User

Hello - yes, this can be done by splitting the fruits column into new rows, like this:

SCRIPT

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WciwoyEkt1lEISE0sglDJGanFSjpKxkqxOtFKTol5QAiUcM5Pzs8rLQEpycxLTQTrAqoyUYqNBQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Fruits = _t, Quantity = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Fruits", type text}, {"Quantity", Int64.Type}}),
    #"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(#"Changed Type", {{"Fruits", Splitter.SplitTextByDelimiter(", ", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Fruits"),
    #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Fruits", type text}})
in
    #"Changed Type1"

RESULT

jennratten_0-1679317858373.png

 

Perfect, thanks!

You're welcome!

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.

March Power BI Update Carousel

Power BI Community Update - March 2026

Check out the March 2026 Power BI update to learn about new features.