cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
adstar22
Helper I
Helper I

create Comma Separated String from collection

Related to some of my other posts. I am trying to find ways around the unsupported multiple select choice check boxes. I want to select items from SPList2 and displays those selected in a field in SPList1 (my request list).

 

 

Current theory I am working on:

I can use a gallery, the items are those in SPList 2. I can apply a checkbox to each of the items displayed. 

If/When checked, the items are added to a collection (colTest). (and removed if unchecked).

 

So, at the end of the screen/process I have a collection of items I want to record against my request on SPList1.

 

ie colTest

Title - Some Text - Some other details

Item 1 - Description - ...

Item 2 - Description - ...

Item 6 - Description - ...

 

My problem, is how to a get the Titles of each item in colTest into a single text field in SPList1 ie: "Item 1, Item 2, Item 6"

 

I cant work out how to combine concat, concatinate, and forall to produce the desired output. 

Is it possible... any examples available?

1 ACCEPTED SOLUTION

Accepted Solutions
CarlosFigueira
Power Apps
Power Apps

You can use the Concat function for that, as shown in the example below:

Concat(colTest, ", " & Title)

Now, with this you'll end up with an extra ", " in the beginning of the sentence (", Item 1, Item 2, Item 6"), so you can use the Mid function to remove those extra characters:

Mid(Concat(colTest, ", " & Title), 3, 1000)

I used a very large third argument so that it would take all characters until the end.

View solution in original post

6 REPLIES 6
CarlosFigueira
Power Apps
Power Apps

You can use the Concat function for that, as shown in the example below:

Concat(colTest, ", " & Title)

Now, with this you'll end up with an extra ", " in the beginning of the sentence (", Item 1, Item 2, Item 6"), so you can use the Mid function to remove those extra characters:

Mid(Concat(colTest, ", " & Title), 3, 1000)

I used a very large third argument so that it would take all characters until the end.

View solution in original post

This looks really good. I havent tried it yet. but thanks for clarifying the syntax.

If I leave the 1000 out (blank), wouldnt the MID function read to the end of the string anyway?!

Thanks

Adam.

No, you need to pass the last parameter, it's not optional. It should be, though, I'll try to talk to the people who own that to make it. For now, using a very high value as the last parameter is a possible workaround.

This one will remove the commas as well: 

 

Right(Concat(colTest), Len(colTest, Concatenate(", ", colTest))-2)
pcmccull
Advocate II
Advocate II

Looks like Concat was updated at some point and now supports a third argument for a joining character. So the current solution would be: 

Concat(colTest, Title, ", ")

 

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.

Top Solution Authors
Top Kudoed Authors
Users online (1,583)