web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / MS Form to List to Out...
Power Automate
Answered

MS Form to List to Outlook to Planner

(0) ShareShare
ReportReport
Posted on by 40

Use Case: An external customer will fill in an online MS Form. Upon submission the form will be PDF's and sent to the department email and add a ticket on MS planner for the department to manage the process. The customer does not know the department email.

 

Hi, I am trying to simplify several manual processes across a few different business areas by using 1 MS form with a department name in a drop down box, then import the form submission to an MS list, once the list is populated, look at the department field and have a field at the end of the list entry that looks up the department field and populates the department email address. I have a separate MS list with the department name and department email (much like I would if i were to use a vlookup formula). The person completing the online MS form will not be able to add the email address, just the department name.

 

Then once this has been populated, the form will be PDF'd and emailed to the department as we as an automative creation of an MS Planner task added to a department board.

 

Cheers for reading!

Benjamin

Categories:
I have the same question (0)
  • S-Venkadesh Profile Picture
    1,214 Super User 2026 Season 1 on at

    Hi @Leschkeb 

    Please find below the solution tailored to meet your requirements.

    Setup:

    • List-1: Reserved for saving Form responses.
    • List-2: Contains department names and associated email addresses for lookup purposes.

    Flow 1:
    Trigger: When a new response is submitted (Connector: Microsoft Forms) in List-1.
    Action: Save the response in SharePoint List - List-1.

    Flow 2:
    Trigger: When an item is created (Connector: SharePoint) in List-1.
    Actions:

    1. Check the Department field value.
    2. If the condition meets the criteria:
      • Create a PDF file using OneDrive connector.
      • Fetch the department email from List-2.
      • Send an email with the PDF attached.
      • Create a Planner task.

    I hope this information is helpful. If it is, please consider giving a thumbs up 👍.

    Best regards,
    Venkadesh Sundaramurthy

  • Leschkeb Profile Picture
    40 on at

    @S-Venkadesh thanks for your advice. I have created the two lists, and the form. I have been able to get the first flow setup to have the list updated with form submission, and will try the second flow - I am fairly new to this. Is there a way to do this all in one flow with delays or concurrent activities in the flow?

  • Leschkeb Profile Picture
    40 on at

    Hi anyone, I am still having challenges with this. I have managed to create a flow which I think will use selection from question 1 in my form (select the location from a list - there are 94 locations) to then lookup a sharepoint list I have tried using filter arrays.... to pull through the three distinct values from each of the 94 locations I need for the rest of the flow; PlanID, GroupID, BucketID. But i am receiving an error aroud PlanID. 

     

    I am not concerned about the PDF of the form - so just want to send the form responses in the discription of a task in a locations planner board in a specific bucket.

    --------------------------

    Schema validation has failed. Validation for field 'PlanId', on entity 'Task' has failed: A non-null value must be specified for this field.

    ---------------------------
    OUTPUT
     {
        "method""post",
        "headers": {
            "prefer"" return=representation"
        },
        "path""/v2/v1.0/planner/tasks",
        "host": {
            "api": {
                "runtimeUrl""https://australia-001.azure-apim.net/apim/planner"
            },
            "connection": {
                "name""/providers/Microsoft.PowerApps/apis/shared_planner/connections/shared-planner-f3b00d3c-5584-4461-afbf-3949b168dba3"
            }
        },
        "authentication": {
            "scheme""Key",
            "parameter""*sanitized*",
            "type""Raw"
        },
        "body": {
            "groupId"null,
            "planId"null,
            "title""TEST",
            "bucketId"null,                          [I AM NOT SURE WHY THIS IS NULL)
            "assignments""ac*******@*******.net.au"   [THIS IS THE FIRST VALUE ON THE LIST - NOT ONE I SELECTED IN MY TEST)
        }
    }
    ---------------------------
    This is my Flow
    SC01.png
     
    This is my filter
    SC05.png
     
    This is the list i have with 94 entries and the Group ID, Plan ID, Bucket ID for each.
    SC02.png
     
    This is my 'create a task' step.
     
     Leschkeb_0-1710578422927.png

     

    But I have a feeling the values aren't coming in correctly with my filters.
     
    This is the output of a run that gives a green tick for these steps...
     
    SC06.png

     

    The email that came through is the first one in my alphabetically sorted list (not from the location i selected in the form; the other 3 values appear to be coming back as null.

     

    However a task is getting created on the correct planner board, and bucket - unsure if that is an accident or working.

     

    Leschkeb_1-1710578823058.png

     

    Any help would be appreciated.

    Benjamin

     
     
     
  • RobElliott Profile Picture
    10,391 Super User 2026 Season 1 on at

    @S-Venkadesh you don't need 2 lists, just a switch control which looks at the department. In each switch case (case department equals Warehouse for example) you'd have the email address entered into a set variable action. Then have a single email action outside the switch which populates the To field with the variable.

     

    Rob
    Los Gallardos
    Principal Consultant, SharePoint, Forms and Power Platform, WSP Global (and classic 1967 Morris Traveller driver)

  • Leschkeb Profile Picture
    40 on at

    @RobElliott any advice on the flow i created and where i may be going wrong? I am a newbie to am trying to follow tutorials or other examples from bespoke sources - if you can dumb it down for me I won't be offended! Best.

    Benjamin

  • Verified answer
    creativeopinion Profile Picture
    10,504 Moderator on at

    @Leschkeb
    The logic of your flow needs to be adjusted. The parallel Filter Array actions are redundant. This action might not even be required based on how your SP list is set up. Also, in your case, using variables isn't necessary. 

     

    Create a new flow and follow along! Remember to rename your actions (when necessary) to keep things organized.

    Use a Manual Trigger

    First, I would recommend using a manual trigger while you build and create your flow. This way you don't need to leave Power Automate to trigger your flow. Once your flow is ready to go—you can replace the manual trigger with the automated trigger.

     

    Response IDs are assigned sequentially. Depending on how many times you've filled out your form, you can enter any number in the Response Id field.

     

     creativeopinion_2-1710642284659.png

    Get Items

    In the Get Items action, you should be able to use an ODATA filter query to filter out the department information based on the MS Form selection. In my example I'm using this Client List. One column for the department name (Client Name in my case) and another for the Email Address(es). 

     creativeopinion_3-1710642476784.png

    Use an ODATA filter query. You will need to use the internal column name of your Dept column. Keep in mind that the internal column name may not always match the name displayed in your Sharepoint list. If you aren't sure how to get the Internal Column name, you can refer to this section of one of my YT Tutorials.

     

    In my case, the Client Name is actually the Title column. Use the eq operator for equals to. Ensure your dynamic content from the Get response details action is placed between single quotes.

     

     

    creativeopinion_4-1710642609289.png

     

    Return Count of Items

    Whenever I use a Filter Query in a Get Items action, I always like to return the count of items returned in a Compose action. This is helpful when building a flow and can also be used to troubleshoot your flow.

     

    Insert a Compose action. Add an Expression. Use the length() function.

    creativeopinion_5-1710642697930.png

     

    Select the Dynamic content tab and insert the value dynamic content from the Get Items action into the length() function.

    creativeopinion_6-1710642750230.png

     

    Run a test. Review the output of the Compose action. If an item is found, the Compose action should output a 1.

    creativeopinion_7-1710642820900.png

    If your Compose action outputs a 0, you'll need to review the Filter Query. Toggle open the Get Items action, click on Show More.

     

    Review the Filter Query and the dynamic content entered. If you are using the eq operator in your Filter Query, the text selected from the MS Form must match the text in your SP List. 

    creativeopinion_8-1710642871468.png

     

    Avoid the Apply to Each Action

    The Get Items action will always return an array of items—even if it's a single item. You can avoid the Apply to Each action by using expressions.

     

    Since you are new to Power Automate I would recommend Composing your dynamic content first. Because you'll need to compose a few dynamic content values I'd recommend adding a Scope action to your flow. This is optional (not necessary). However, I do find Scope actions help keep my flow organized. It also helps to group a lot of actions together so you can collapse them all in a single click.

     

    creativeopinion_9-1710643131373.png

     

    Add a Compose action to store the Group ID. Insert the Group ID dynamic content from the Get Items action. When you do this, the Compose action will automatically nest itself inside an Apply to Each action. Watch this section of the YT Tutorial I've linked at the bottom for a demo on how to do this. 

    creativeopinion_10-1710643247026.png

     

    To avoid the Apply to Each action, click on the three dots of the Compose action and select Peek Code.

    creativeopinion_11-1710643374287.png

    Copy the text between (and including) the square brackets to your clipboard. This is the dynamic content key.

    creativeopinion_12-1710643453194.png

     

    Delete the dynamic content from the Compose action and pull the Compose action outside of the Apply to Each action. 

    creativeopinion_14-1710643553455.png

    Add an Expression. Enter a question mark, a zero between square brackets and paste the text from your clipboard. Since the Get Items action returns an array of items, to select the first item, you'll need to use an item key. The first item in an array is 0.

    creativeopinion_15-1710643647992.png

    Place your cursor at the start of the expression by pressing the UP arrow key. Click on the Dynamic Content tab and insert the value dynamic content from the Get Items action into your expression.

     

    creativeopinion_17-1710643716237.png

     

    creativeopinion_18-1710643766525.png

    Repeat this for each piece of dynamic content you'd like to return from your SharePoint list. It's important to rename your Compose actions to keep things organized—you'll see why shortly.

    creativeopinion_19-1710643831106.png

     

    Run a test. Ensure that the output of the Compose actions are outputting the values you are expecting. It's important to take the time to run tests before you even try to create a task in Planner. For more flow troubleshooting tips—check out this YT Tutorial: 5 Power Automate Troubleshooting FAQs and Helpful Tips for Creating Better Flows

     

    IN THIS VIDEO:

     How to troubleshoot a false Condition action result

     How to get dynamic content when it isn’t selectable from the list of dynamic content

     How to troubleshoot an Apply to Each action that isn’t looping through

     How to troubleshoot a skipped Apply to Each action

     How to troubleshoot a Filter Query

     How to use a SharePoint yes/no column in a Filter Query

     How to use Compose actions to troubleshoot a Power Automate flow

    How to troubleshoot multiple emails being sent

     How to troubleshoot multiple Teams messages being sent

     

    Create a Task

    Add a Create a Task action to your flow. For the Group Id, select Enter Custom Value.

    creativeopinion_21-1710643983005.png

     

    This is why it's important to rename your actions. So you can easily see which dynamic content belongs to which action. 

    creativeopinion_22-1710644017643.png

    Insert the appropriate dynamic content into the appropriate fields. This includes the dynamic content from your MS Form.

     

    ----

     

    You might find these YT Tutorials Helpful: 

     

    3 Mistakes YOU 🫵 are Making with the Apply to Each Action in your Microsoft Power Automate Flow

     

    In this video tutorial I’ll go over how to avoid these common mistakes when using the Apply to Each action in a Power Automate flow:

     

    1️⃣ Looping through a Single Item

    2️⃣ Creating Unnecessary Nested Loops

    3️⃣ Looping through an Unfiltered Array

     

    At the end of the video I share a few helpful insights when it comes to using the Apply to Each action in your flow.

     

    IN THIS VIDEO:

     How to avoid the Apply to Each action with a single item array

     How to use the item() function to access dynamic content in an array

     How to prevent unnecessary nested Apply to Each action loops

     How to use the Select action

     How to convert an array to a string with the Select action

    How to use the Filter Query field

     How to count the number of items in an array

     How to use a condition control

     How to use the concurrency control

     How to set a top count

     How to use Compose actions for troubleshooting

     

    Hope this helps!

    If I helped you solve your problem—please mark my post as a solution .
    Consider giving me a 👍 if you liked my response!

    👉 Level up your Power Automate skills by checking out my tutorials on YouTube
    👉 Tips and Tricks on TikTok and Instagram

     

  • Leschkeb Profile Picture
    40 on at

    @creativeopinion thanks for your assistance! I was able to follow your instructions and rebuild the flow to give me everything I needed to make it work. Your videos were helpful too! Thanks again for your assistance!

    Benjamin

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Kudos to our 2025 Community Spotlight Honorees

Congratulations to our 2025 community superstars!

Leaderboard > Power Automate

#1
trice602 Profile Picture

trice602 237 Super User 2026 Season 1

#2
David_MA Profile Picture

David_MA 176 Super User 2026 Season 1

#3
Power Platform 1919 Profile Picture

Power Platform 1919 96 Super User 2026 Season 1

Last 30 days Overall leaderboard