Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!Vote for your favorite vizzies from the Power BI Dataviz World Championship submissions. Vote now!
I have the below table
I want to create another column called "Local Market" which splits this column based on semi-column and the values come on a new row like below
What can be the power query code for this
Solved! Go to Solution.
Hi @gigotomo ,
Try the following example code to see how I did this:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcnG1DvW2dg1WitWJVnL0AXHcgpRiYwE=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Local Market Combined" = _t]),
// Relevant steps=====>
dupeColumn = Table.DuplicateColumn(Source, "Local Market Combined", "Local Market"),
splitByDelimToRows = Table.ExpandListColumn(Table.TransformColumns(dupeColumn, {{"Local Market", Splitter.SplitTextByDelimiter(";", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Local Market")
in
splitByDelimToRows
Summary:
-1- Duplicate [Local Market Combined], changing the new column name to the desired value in the duplicate step code:
-2- Select your new [Local Market] column and go to Transform tab > Split Column (dropdown) > By Delimiter. Set up this as follows:
Output:
Pete
Proud to be a Datanaut!
let
Source = #table({"Local Market Combined"}, {{"DE;UK;ES"}, {"AL;UK;FR"}}),
result = Table.FromList(
List.TransformMany(
Table.ToList(Source, (x) => x),
(x) => Text.Split(x{0}, ";"),
(x, y) => x & {y}
),
(x) => x,
{"Local Market Combined", "Local Market"}
)
in
result
let
Source = #table({"Local Market Combined"}, {{"DE;UK;ES"}, {"AL;UK;FR"}}),
result = Table.FromList(
List.TransformMany(
Table.ToList(Source, (x) => x),
(x) => Text.Split(x{0}, ";"),
(x, y) => x & {y}
),
(x) => x,
{"Local Market Combined", "Local Market"}
)
in
result
Hi @gigotomo ,
Try the following example code to see how I did this:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcnG1DvW2dg1WitWJVnL0AXHcgpRiYwE=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Local Market Combined" = _t]),
// Relevant steps=====>
dupeColumn = Table.DuplicateColumn(Source, "Local Market Combined", "Local Market"),
splitByDelimToRows = Table.ExpandListColumn(Table.TransformColumns(dupeColumn, {{"Local Market", Splitter.SplitTextByDelimiter(";", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Local Market")
in
splitByDelimToRows
Summary:
-1- Duplicate [Local Market Combined], changing the new column name to the desired value in the duplicate step code:
-2- Select your new [Local Market] column and go to Transform tab > Split Column (dropdown) > By Delimiter. Set up this as follows:
Output:
Pete
Proud to be a Datanaut!
Vote for your favorite vizzies from the Power BI World Championship submissions!
If you love stickers, then you will definitely want to check out our Community Sticker Challenge!
Check out the January 2026 Power BI update to learn about new features.
| User | Count |
|---|---|
| 15 | |
| 11 | |
| 11 | |
| 8 | |
| 6 |