logo
search
Others

How to Update a SharePoint List Item When a Microsoft Form Is Submitted

Amos GikundaAmos Gikunda Sep 30, 2026 869 views

Question details

The user needs to update an existing SharePoint or Microsoft Lists item using a Power Automate flow triggered by a Microsoft Forms submission, specifically by matching the respondent's email address to retrieve the required list item ID.

How to Update a SharePoint List Item When a Microsoft Form Is Submitted
Product
Power Automate, SharePoint, Microsoft Forms
Device & OS
not provided
Scenario
Automating list updates when new form responses are received from users.
Observed behavior
The flow requires the specific list item ID to update a row, which is missing from the form response and must be retrieved by matching the submitted email address against the existing list entries.
Before you start

Ensure you have access to the target Microsoft Form and the associated SharePoint List or Microsoft List, along with adequate permissions to create and edit Power Automate workflows.

Solution 1Recommended

Use Power Automate to Get Items and Update the Matched Row

Retrieve the form response details, filter the SharePoint list by the submitted email address, and use an 'Apply to each' loop to update the specific item.

To update an existing SharePoint list item based on a Microsoft Forms submission, you must first locate the correct item's unique ID. This is achieved by querying the SharePoint list for a record that matches a unique identifier, such as the respondent's email address.

1
Add Trigger and Get Response Details

Start your flow with the 'When a new response is submitted' trigger. Add the 'Get response details' action, selecting your Form ID and passing the 'Response ID' dynamic content from the trigger.

2
Retrieve SharePoint Items

Add the 'Get items' action pointing to your target SharePoint list. Expand advanced options and use the Filter Query field to match the list's email column with the email address dynamic content from the form response (e.g., EmailAddressColumn eq 'Respondent Email').

3
Update the List Item

Add an 'Update item' action. Because 'Get items' returns an array, Power Automate will automatically wrap this action in an 'Apply to each' loop. For the Item ID field, use the dynamic content 'ID' from the 'Get items' output (such as items('Apply_to_each')?['ID']).

4
Map Dynamic Content Properly

Ensure you select the form fields using the dynamic content picker to populate the rest of the 'Update item' fields. Do not manually copy example expressions, as the generated field names vary depending on your specific environment.

Use Power Automate to Get Items and Update the Matched Row
Dynamic Parameter Mapping: Avoid hardcoding parameters like outputs('Get_response_details_2')?['body/...']. Always select the corresponding dynamic value generated directly in your own flow environment.
Free Microsoft Office alternative

Simplify Data Management with WPS Office

While Power Automate and SharePoint are excellent for complex workflow automation, everyday document creation, data logging, and list management can often be simplified. WPS Office provides a lightweight, comprehensive productivity suite that is fully compatible with Microsoft Word, Excel, and PowerPoint, making it perfect for managing spreadsheets and forms locally.

Fully compatible with Microsoft Office formats (.docx, .xlsx, .pptx).Includes a powerful spreadsheet tool for managing lists and tabular data easily.Lightweight design ensuring fast startup and smooth operation.Built-in PDF editing capabilities for seamless document workflows.Free and user-friendly interface with an intuitive tabbed workspace.
microsoft office alternative - wps office

Frequently Asked Questions

Why does Power Automate automatically add an 'Apply to each' loop when I add the 'Update item' step?

The 'Get items' action in Power Automate always returns an array (a list of items), even if your filter query only matches a single record. Power Automate automatically adds the loop to handle the possibility of multiple returned items.

How exactly should I format the OData filter query to match an email address?

In the 'Get items' action, use the 'Filter Query' field. Write the internal column name, followed by 'eq', and enclose the dynamic email content in single quotes. Example: EmailColumn eq '<select dynamic email content>'.

What happens to the flow if the email address doesn't exist in the SharePoint list?

If the email is not found, the 'Get items' action will return an empty array. The 'Apply to each' loop will simply not execute, and the 'Update item' step will be safely skipped without causing the flow to fail.

Why are my dynamic content tags from Microsoft Forms not appearing in the 'Update item' action?

This usually happens if the 'Get response details' action is missing or configured incorrectly. Ensure you have added the 'Get response details' step right after the trigger and selected the correct form ID.