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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
BrianPBI37QF
Frequent Visitor

Add new row conditionally

Hi, 

I would like to add new row, Using M Query, for each word after a comma, where all data is the same except for the word after the comma: 

BrianPBI37QF_0-1678313381418.png
Would become:

BrianPBI37QF_1-1678313528197.png

 

1 ACCEPTED SOLUTION
adudani
Super User
Super User

hi @BrianPBI37QF ,

sample input:

 

adudani_1-1678318493632.png

 

 

See output using sample data:

 

 

adudani_2-1678318513993.png

 

the steps are below:

 

 select the column you want to split then:

step1: click on  "Transform" tab.

step2: Select split column by delimiter

step3: select the delimeter ( in this case Comma)
step4: Each occurence of delimiter

step5: choose advanced options, select split into rows. then OK.

adudani_0-1678318302870.png

 

Alterntatively:

 

create a blank query. Copy and paste the code below into the advanced editor:

 

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUXLOzy3ISS1JBTKN9Q2M9I0MjIyBbCN9A2MY29nfN8AvBMjw9AsOcfTxAbJ8XZ09dOCEUqxOtJITHsMskDg4TFOKjQUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [part = _t, status = _t, date = _t, date2 = _t, column1 = _t, column2 = _t, column3 = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"part", type text}, {"status", type text}, {"date", type date}, {"date2", type text}, {"column1", type text}, {"column2", type text}, {"column3", type text}}),
    #"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(#"Changed Type", {{"column3", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "column3")
in
    #"Split Column by Delimiter"

 

 

 

 

Did I answer your question? Mark my post as a solution, this will help others!
If my response(s) assisted you in any way, don't forget to drop me a Kudos 🙂
Kind Regards,
Avinash

View solution in original post

1 REPLY 1
adudani
Super User
Super User

hi @BrianPBI37QF ,

sample input:

 

adudani_1-1678318493632.png

 

 

See output using sample data:

 

 

adudani_2-1678318513993.png

 

the steps are below:

 

 select the column you want to split then:

step1: click on  "Transform" tab.

step2: Select split column by delimiter

step3: select the delimeter ( in this case Comma)
step4: Each occurence of delimiter

step5: choose advanced options, select split into rows. then OK.

adudani_0-1678318302870.png

 

Alterntatively:

 

create a blank query. Copy and paste the code below into the advanced editor:

 

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUXLOzy3ISS1JBTKN9Q2M9I0MjIyBbCN9A2MY29nfN8AvBMjw9AsOcfTxAbJ8XZ09dOCEUqxOtJITHsMskDg4TFOKjQUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [part = _t, status = _t, date = _t, date2 = _t, column1 = _t, column2 = _t, column3 = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"part", type text}, {"status", type text}, {"date", type date}, {"date2", type text}, {"column1", type text}, {"column2", type text}, {"column3", type text}}),
    #"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(#"Changed Type", {{"column3", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "column3")
in
    #"Split Column by Delimiter"

 

 

 

 

Did I answer your question? Mark my post as a solution, this will help others!
If my response(s) assisted you in any way, don't forget to drop me a Kudos 🙂
Kind Regards,
Avinash

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors