How to Fix Microsoft Forms Multi-Select Choices in SharePoint
Question details
The user needs to correctly populate a SharePoint multi-select choice column with multiple values selected from a Microsoft Forms submission.

- Product
- Power Automate, SharePoint
- Device & OS
- not provided
- Scenario
- Automating data transfer from a Microsoft Forms submission into a SharePoint list.
- Observed behavior
- Power Automate places all selected values from the form into a single SharePoint choice pill, instead of creating separate pills for each selection.
Verify that your destination SharePoint list column is set as a 'Choice' type and that the 'Allow multiple selections' option is toggled on.
Parse JSON and Append Choices to an Array Variable
This method converts the single string output from Microsoft Forms into an array of individual objects that SharePoint can recognize as distinct multi-select choices.
Microsoft Forms outputs multi-select answers as a serialized JSON string. To separate them, you must instruct Power Automate to read the string, break it down into an array, and reformat it into the specific structure SharePoint requires for choice columns.
At the beginning of your flow, add an 'Initialize variable' action. Name it something recognizable (e.g., 'ChoiceArray'), set the Type to 'Array', and leave the Value empty.
Add a 'Parse JSON' action. In the Content field, select the dynamic content corresponding to your multi-select question from the Forms trigger. Click 'Generate from sample' and paste a sample array like ["Choice 1", "Choice 2"] to generate the schema.
Add an 'Apply to each' action and use the Body output from the Parse JSON step. Inside this loop, add an 'Append to array variable' action targeting your 'ChoiceArray'. In the value box, type {"Value": "@{items('Apply_to_each')}"}.
In your 'Create item' or 'Update item' SharePoint action, locate your choice column. Click the 'Switch to input entire array' button (usually a small box with a T or list icon) next to the field, and insert your completed 'ChoiceArray' variable.

Looking for a simpler way to manage forms and data? Try WPS Office
While automated workflows between Microsoft Forms and SharePoint are powerful, they often require complex logical troubleshooting. For standard data collection, spreadsheet management, and document editing, WPS Office offers a free, lightweight, and highly compatible alternative to the Microsoft Office suite.
- 1. Download WPS Office: Visit the official WPS website and download the installation package for your operating system.
- 2. Install and Launch: Follow the on-screen instructions to install the software, then launch WPS Office to access Writer, Spreadsheets, and Presentation.
- 3. Manage Data Easily: Open your exported form data directly in WPS Spreadsheets to quickly organize, filter, and format your information without setting up complex flows.

Frequently Asked Questions
Why does Power Automate group all multi-select choices into a single SharePoint tag?
Microsoft Forms sends multi-select data as a single string of text formatted like an array (e.g., '["Apple","Banana"]'), rather than actual separate data objects. SharePoint reads this entire string as one single value unless you explicitly parse it into separate JSON objects using Power Automate.
Can I use the 'Join' action to format the choices instead of a loop?
No. While the 'Join' action is useful for converting an array into a single comma-separated text string, a SharePoint Choice column requires an array of specifically formatted JSON objects (e.g., {"Value": "Choice Name"}) to assign multiple distinct choice pills.
What should I do if the Parse JSON step fails when a user leaves the question blank?
If the multi-select question is not mandatory, an empty response can cause the Parse JSON action to fail. To resolve this, you can add a Condition step before Parse JSON to check if the question's dynamic content is empty, or use the coalesce() expression to default to an empty array.




