How to save Microsoft Forms Responses & Attachments to SharePoint Lists or Libraries & Send Email
This video is a step-by-step tutorial on how to leverage Power Automate flows to save Microsoft Forms Responses along with the attachments (multiple file uploads) to SharePoint Lists, SharePoint Document Libraries, SharePoint Folders & Send Email with Forms responses and attachments.
I will showcase how to create a Personal Microsoft Form & a Group Microsoft Form with file upload options and walkthrough steps of creating Power Automate flows to save the responses and the attachments in SharePoint. I will also showcase how to send Microsoft form responses in email along with the attachments.
I will also show where Microsoft Forms Attachments are saved. We will leverage Power Automate to query the saved Forms attachments which would either be in OneDrive for Business or SharePoint depending upon whether it is a Personal Microsoft Form or a Group Microsoft Form.
This Power Automate Tutorial Video covers the following:
✅ Create Microsoft Forms with File Upload
✅ Save MS Forms Response & Attachments to SharePoint List
✅ Save MS Forms Attachments to Document Library
✅ Save MS Forms Attachments to Folders
✅ Send Group Forms Attachments & Response in Outlook Email
⬇️ To download the Microsoft Forms, flows and JSON Formatting sample for SharePoint List showcased in the video:
github.com/rdorrani/Microsoft...
📽️ Flow to save Microsoft forms data to SharePoint - All column types - choice, multiple choice, numbers, etc.
• Power Automate Microso...
To learn about flow expressions:
• Power Automate flow Ex...
To learn about list formatting:
• SharePoint List Format...
Renaming Microsoft Forms Attachments:
• Handling Forms file up...
#MicrosoftForms #PowerAutomate #SharePoint #Email #Outlook
Table of Contents:
0:00 - Introduction to saving Microsoft Forms data to SharePoint using Power Automate
0:33 - Build a Microsoft Form with File Upload Option
4:40 - Save Form Responses in SharePoint
6:19 - Flow to Save Forms Responses to SharePoint List
9:56 - Save Microsoft Form File Uploads to SharePoint List as Attachments
14:42 - Multiple File Upload Questions in Microsoft Forms
18:17 - Microsoft Forms File Upload to SharePoint Document Library
23:36 - SharePoint List Formatting
25:30 - Microsoft Forms File Uploads to SharePoint Folders
28:02 - Send Group Forms Response in Email
29:38 - Send Forms Response & Attachments in Email
34:31 - Subscribe to Reza Dorrani channel
🤝 Let’s connect on social:
🔗 LinkedIn: / rezadorrani
🐦 Twitter: / rezadorrani
Пікірлер: 1 100
Another great video, Reza. This time, I actually created everything alongside as I was watching it. That hands-one practice actually embeds the knowledge even more as I've discovered. A strange thing I noticed though..... With the Training Survey Form (From a Group form), The Flow seemed to work only when I upload either an Image or PDF File. Once I added a Word or Excel File, it fails at the "Get the content using path" action... giving a file not found (404) error. it finds the image, PDF but couldn't find the Word/Excel file. What could be causing that? In the demo, you uploaded PDF's so you may not have noticed it or, I may be doing something wrong?? Will be interesting to find out your thoughts on that. Thanks again
@RezaDorrani
2 жыл бұрын
You are spot on. It does not work for certain file types. Here is the fix. Use "get file content by path" SharePoint action. And for the path use the following expression: concat('YoursiteURL/Shared%20Documents/Apps/Microsoft%20Forms/Training%20Survey/Question/',item()?['name']) YoursiteURL - Your SharePoint Site URL Training%20Survey - Form Name
@dougydoe
2 жыл бұрын
@@RezaDorrani What a relieve!! Stayed on it for a few hours just trying to figure it out until I tried the file combinations. I just thought I was missing something. Thanks for confirming.
@RezaDorrani
2 жыл бұрын
@@dougydoe Thank You for highlighting this!
@dougydoe
2 жыл бұрын
@@RezaDorrani I tried the fix and this time, the Flow seems to be in perpetual "Running" mode. Was in that state for over 12min so had to cancel it. The files being uploaded are way below the Max size limit for each file as well. Just to reiterate; the concat(......expression) you provided as the fix should be the File Path's property value in the "Get the content using path" action within the Apply to each action, right?
@RezaDorrani
2 жыл бұрын
@@dougydoe Max file size limits are hard limits and cannot be exceeded. The concat does not have any file path.Its your hardcoded doc library url and name of file which is dynamic.
So timely. I spent time doing form attachments to both lists and email (in an approval request) but where mines was heavy at processing each attachment , including checking if null, Reza's code does it in 4-5 steps as opposed to mines which was 4 steps for each file processed. Guess whose spending time tonight to optimise his flow. Reza , you're brilliant.
@RezaDorrani
2 жыл бұрын
Thanks for sharing your scenario, Manish. So glad to hear the technique showcased in video is effective. Good luck with improving your flow :)
This is THE best tutorial on how to handle Forms attachment in List. Thank you so, so much. I had spent countless hours trying to understand how to deal with optional or multiple Forms attachment, and this made it super easy. I managed to have the 4 different optional file uploads from my Forms saved to my List. Thank you, thank you, thank you!!!
@RezaDorrani
2 жыл бұрын
You are most welcome Veronique! Thank You so much for the awesome feedback. Means a lot.
@plcoin3355
11 ай бұрын
Hello, can you please explain how you did this? Did you add 3 more fields for the respective documents in the condition? I have a document MS form with three different file upload dialogs and I'm having trouble realizing it. Thanks ;)
@Tyr00003
2 ай бұрын
@@plcoin3355 same question here how to handle 3 or more document upload question :)
This is unbelievable. I did a Google search for "microsoft forms store data from responses". This is the first returned video. It is crazy that this process is exactly what I needed. I have never had the first returned video ever be the perfect video for my needs. Wow. It covered both of my use cases - storing responses to my OneDrive and for a Group SharePoint. Thank you so much!
@RezaDorrani
Жыл бұрын
Thanks to Google :) Glad to hear the video covers most scenarios. Thank You so much for watching.
Another awesome video! This is very similar to my current project, so your timing is impeccable! I am doing a faculty appointment form where the user has to upload verification documents. I added branching and a final document upload at the end. With this video, I can now go back and add multiple file uploads. Thank you so much!!!
@RezaDorrani
2 жыл бұрын
Glad it was helpful! Thanks for sharing your scenario. Good luck!
I'm not the kind of person who is used to like and comment on videos but I had to surrender myself to this one because it helped me to solve a big problem related to this topic. Thank you very much for share this content we us!!! Like the video and follow you is the least we should do!
@RezaDorrani
10 ай бұрын
Thank You so much for the appreciation!
Great stuff! Your use of expressions to streamline the process is beautiful. As much as I practice, I really struggle with writing complex/compound expressions and nearly always resort to using a bunch of compose actions with much simpler formulas. Also, thanks for linking to my video on manipulating the file name to remove the submitter's name.
@RezaDorrani
2 жыл бұрын
Thank you very much and your video on file naming is very good!
@DavidL-kw4fr
2 жыл бұрын
Great Videos from You both, Mates. Does @Chad's method also work to get rid of the wild Filname before the actual Filename? The attachment in MS Lists has the original Filename but in de SP Documentlibrary its kind of wild. Just as seen here: kzread.info/dash/bejne/fWGcy6aIgKStXZc.html in Minute 25:27 Also i am trying to find out, where exactly i need to put in the "Parse JSON"-Function in Rezas Workflow. Thanks so much for all your help.
Thanks for all your videos! You have helped me so much in my career. This video ended a long search for a resolution of why my data wasn't uploading to SharePoint for all of my sites when they didn't add an attachment! You're the best! Keep them coming!
@RezaDorrani
Жыл бұрын
Thank You so much!
Best tutorial for handling attachments. Reza has thought of many different scenarios and has clearly shown how to handle each one. Bravo!
@RezaDorrani
Жыл бұрын
Glad it was helpful!
@pac0113
7 ай бұрын
Clearly not excel attachments though 🙄
Bro you're the best
@RezaDorrani
2 жыл бұрын
Thanks bro
What a fantastic video!! A genuine masterclass. Clear, structured, each grows on the next. The way you construct the flow is very intuitive - others say, "I'm going to create a variable, you'll see why later...". You say, "I need x but hold on, I need to loop through, so first I need to create a variable". This is far better for newbies that don't have that foresight yet. Brilliant! Quick question: in the Additional Documents demo, you created a condition to check whether Additional Documents was null before proceeding. Why not simply create varFiles and then append both Photos and Additional Documents to it? If the Additional Documents array is empty, it won't append anything to the varFiles array. No need for the conditional branch?
@RezaDorrani
2 жыл бұрын
Thanks You for the awesome feedback David. Your point on the array being empty is right. I did a video on it earlier however for some reason the flow does not accept an empty array when calling the SharePoint actions. Hence those checks in the code.
@plcoin3355
11 ай бұрын
Hey @davidadams421, can you please explain how you mean that? I have a document MS form with 3 different file upload dialogs and struggle with the logic. Thanks ;).
@davidadams421
11 ай бұрын
@@plcoin3355 Wow, this was a while back! I've slept since then!! If memory serves, in Reza's demo, he populated an array with a list of files, then checked whether additional files existed, if so, added them to the array. My point was he could just add everything to the array without the check, however this wouldn't work for the reasons he mentions.
Spent half a day trying to get this working with other vids, only took 15min once I found yours. Bravo sir!
@RezaDorrani
8 ай бұрын
Perfect!
I watched this in 1.5 speed and bang! I got more than I asked for. Fantastic tutorial! Thank you!!!
@RezaDorrani
Жыл бұрын
Thanks Jay
Thank you SO much! This has been one of the most simple ways to do this. Other articles on the internet are much too complicated and I've used this many times. Thank you again!
@RezaDorrani
Жыл бұрын
You're very welcome! The reason I made this video were the other articles :)
My goodness! Another dynamic video! I learn something every week from you, Reza. Please keep the videos coming.
@RezaDorrani
Жыл бұрын
Thanks so much. Video description has link to download sample flow. Give that a try.
@mjmann2402
Жыл бұрын
@@RezaDorrani, I did figure it out. Thank you so much.
Thank you Reza, once again you have successfully shown me how to solve a power automate puzzle where many others fail. I should have known to check your channel first. I am grateful for all the help you so generously provide. 🙏
@RezaDorrani
4 ай бұрын
Most welcome
Worked like a charm, Reza thank you for all the time you put into these videos. You are a champ.
@RezaDorrani
2 жыл бұрын
You are most welcome. Thank You for watching.
Your a star and make it look so easy, mind you I have used a lot of your videos to get my head around things. So well explained and thank not just for this video but all the others, please don't ever stop we need you
@RezaDorrani
Жыл бұрын
Wow, thank you! Il try my best to keep going!
Easy explanation of many different use scenarios, much appreciated.
@RezaDorrani
2 жыл бұрын
Glad to hear that! Thanks for watching.
Thanks for this. I needed some quick help to show me how to handle attachments, so I had to skip to the relevant parts. But it was exactly what I needed. Awesome!
@RezaDorrani
Жыл бұрын
Glad it helped!
Thank you very much! Great explanations, and the walk thru was the perfect pace! You've saved me yet again!!!
@RezaDorrani
5 ай бұрын
Most welcome
This was really helpful. Just getting started with Power Automate etc. and Reza laid it out very clearly, especially the attachments part which was really complex in some examples
@RezaDorrani
Жыл бұрын
Glad to hear that
Thank you reza, all your power automate tutorial is really helpful. The least I can do is subscribing and giving like. Cheers
@RezaDorrani
4 ай бұрын
Hey, thanks so much. Appreciate the sub.
Amazing. it's been a while since I've had a very deep and thorough tutorial. Nothing like this. good luck to you sir and thank you!
@RezaDorrani
Жыл бұрын
Thank You so much for the amazing feedback.
Thank you so much for step-by-step explanation! I was looking for the same use-case. Thanks again!! Great Content!!
@RezaDorrani
Жыл бұрын
You’re most welcome
As always Reza there are nuggets of information i hadn't even thought of. Thanks so much !
@RezaDorrani
2 жыл бұрын
Awesome! Glad to hear that. Thanks for watching.
Amazing! I appreciate your video and taking the time to show us. Thank you so much - it worked perfectly!
@RezaDorrani
Жыл бұрын
You're most welcome!
Thanks so much! Solved an afternoon of troubleshooting in 10 mins!
@RezaDorrani
8 ай бұрын
Great to hear!
Following this tutorial made me do a happy dance every time something worked on the first try 🎉 thank you Reza!!
@RezaDorrani
Жыл бұрын
You're so welcome! Makes me happy to know that the video is helping others
Amazing video - It's so great to learn the way you explained the smoothness while creating so many loops in power automate. I have a similar kind of task to link MS form (with almost multiple branching questions and almost 10 attachment questions comprising of 48 questions) to azure in a way that I can create work items directly per the responses received. thank you for this video it is quite beneficial.
@RezaDorrani
Жыл бұрын
Glad it was helpful!
Fantastic job with this video! Very helpful! Thank you!
@RezaDorrani
8 ай бұрын
Most welcome
Brilliant, thank you. It's taken me hours to try and do this. Without your help I couldn't have done it.
@RezaDorrani
Жыл бұрын
You are most welcome!
Thank you for this video. Very helpful.
This was perfect and solved my problem. Very easy to follow! Thank you!
@RezaDorrani
5 ай бұрын
Great to hear!
Wow rezza. This video is kinda like a lemon cake for me. it's delicious. I'm so impressed. You're a genius
@RezaDorrani
2 жыл бұрын
Wow, thank you so much!
I wish I could give you more upvotes. I automatically upvote your videos as they start because I know I will learn something.
@RezaDorrani
Жыл бұрын
Wow! Thank You Grant
Thanks for sharing 🙏 As always a ton of great tips and clear guidelines.
@RezaDorrani
2 жыл бұрын
Glad it was helpful!
your content is golden and scary comprehensive. you are god send my friend !
@RezaDorrani
8 ай бұрын
Wow, thank you!
Man, you are a diamond! I love your videos. I would like to hear you advise on a topic on a case, however I am aware that you are most probably very busy. All the best for you Reza!
@RezaDorrani
8 ай бұрын
Thanks so much. Busy - Yes. As long as the question is around the video, feel free to post it here.
@michael_wellington
8 ай бұрын
@@RezaDorrani I would like to have your opinion on a ticket system that I want to build almost like you. Each ticket/form should contain all informations for a material. A reviewer will either accept, reject the form or set it to status pending, because further information is needed for this form. Now my questions: 1. How can the requestor give the reviewer the information, that some of his requests (tickets) belong together? 2. Is it possible to create a MS form template or a copy of an older filled out form, where a bunch of fields are already filled out to make the filling out of the new request easier? 3. How to collect the missing information for the ticket, that is pending and how to connect it in the SharePoint list in order to have a history? Thank you for your response in advance!
@RezaDorrani
8 ай бұрын
@@michael_wellington This is more of project requirements :) I would recommend posting your queries one by one on forums powerusers.microsoft.com
@michael_wellington
8 ай бұрын
@@RezaDorrani Thanks dear!
Reza, you are amazing! You continue to impress :)
@RezaDorrani
2 жыл бұрын
Thanks man
You always be the best teacher for me , Thank you again
@RezaDorrani
8 ай бұрын
Thanks so much
These videos are perfect. Thank you so much
@RezaDorrani
Жыл бұрын
Glad you like them!
Thanks again! You’ve got very good kit!
@RezaDorrani
Жыл бұрын
Most welcome!
Awesome video as usual🤝. Big fan of useful hacks that you cover in your content (providing link of document using list formatting , just excellent !!) - THANK YOU
@RezaDorrani
2 жыл бұрын
Glad you like them!
Awesome video!! Very helpful. I am just learning this stuff. Thank you!
@RezaDorrani
8 ай бұрын
Great! Thanks Mark. Wish you the best in your learnings
Super helpful video, thank you!!
@RezaDorrani
2 жыл бұрын
Your most welcome
Excellent tutorial. Thank You!
@RezaDorrani
9 ай бұрын
Most welcome
Awesome! Thank you so much for this guide...
@RezaDorrani
Жыл бұрын
Most welcome
Reza, You are a rock star. This video really helped me.
@RezaDorrani
Жыл бұрын
Happy to hear that
Many thanks indeed Reza. I the begining I did not like very much your assertive way of speaking, but after getting used to it, your clear ste by step approach has help me a lot. I have seen many other power automate youtubers, and none of them was able to explain as well as you just did, following each step clearly, moving the scree slow enough to capture the formilas!!, just great!! Yes please if you set up a training portal, just le me know, happy to join!!
@RezaDorrani
Жыл бұрын
Thank You Emilio for the excellent feedback! I will try my best to get rid of that assertive tone. Hopefully improving video by video.
@RezaDorrani
10 ай бұрын
Check channel memberships. I have gone live with a training tier that you can sign up for now. kzread.infojoin
@EMiller500
4 ай бұрын
@@RezaDorrani Actually, I like this manner of expression (or "tone"). It is very focused on the key concepts that one needs to grasp, making the video concise yet fully edifying. It is quite evident that Reza invests a great deal time and effort in preparing each video, so that it demonstrates and conveys exactly the critical points necessary in the most economical way. This is in contrast to some KZreadrs in this topic (whom I shall not name) who make videos where they babble on and on with low-value chit-chat for over an hour and just waste the viewer's time.
@RezaDorrani
4 ай бұрын
@@EMiller500 Thanks so much. I wish I could share how seriously I take each and every video I put out. My goal is to give value to the listener for every minute they watch. Spend hours editing to ensure there is no fluff.
Thank you for this very instructive video I managed to complete a project only 10 days after discovering power automate.
@RezaDorrani
Ай бұрын
Awesome
Amazing Video thank you, you helped me alot!
@RezaDorrani
2 ай бұрын
Glad it helped!
wonderful step by step video, everybody is able to follow, even me!!!! thanks so much
@RezaDorrani
Жыл бұрын
You are most welcome! Thank You for watching.
@valeriafilolungo2187
Жыл бұрын
@@RezaDorrani please, keep on creating such great videos. Thanks
@RezaDorrani
Жыл бұрын
@@valeriafilolungo2187 I will keep trying my best
This helped me so much! Thank you so much for putting the time into making this tutorial!
@RezaDorrani
2 ай бұрын
You're most welcome!
@kylee5033
2 ай бұрын
@@RezaDorrani question. I have an incident tracking form that creates a sharepoint list, following the steps you outlined in your video. One of the questions ask the user about the urgency of the issue being reported, so that our tech team knows how to properly respond. Instead of using high, medium, low, we've chosen to use human readable options, like "help me, everything isn't working". My question, is there a way to display the human readable version and then transform what they've selected back to a high, medium and low designation in the sharepoint list? Essentially I want the list to show high when the customer selects the form option "help me, everything isn't working".
@RezaDorrani
2 ай бұрын
@@kylee5033 Possible. Write if condition in flow to check the value in form and accordingly set value in SP list.
@kylee5033
2 ай бұрын
@@RezaDorrani Awesome! Thanks again for the help!
a year leater, it still works. Thanks!!
@RezaDorrani
10 ай бұрын
Glad to hear
You are super, man! My hero!
@RezaDorrani
11 ай бұрын
🦸♂️
Outstanding video, thank you for sharing. It helped me greatly.
@RezaDorrani
3 күн бұрын
Glad it helped!
thank you so much this was a great help
@RezaDorrani
5 ай бұрын
Most welcome
Thank you for this - very helpful.😁
@RezaDorrani
Жыл бұрын
Goad to hear that! Thank You for watching.
Thank you!
@RezaDorrani
Жыл бұрын
You're welcome!
Thanks a lot for your excellent video!
@RezaDorrani
11 ай бұрын
Most welcome
Excellent Reza, your content is awesome
@RezaDorrani
2 жыл бұрын
Thank you so much!
I learn much more knowledge for adapt and improve my work. Thank you and please more clip!
@RezaDorrani
Жыл бұрын
Thanks so much. A lot more to come!
thnx Reza, great video!
@RezaDorrani
Жыл бұрын
Most welcome
You Reza.. you are a genius... !!! Super fan of yours..!!
@RezaDorrani
Жыл бұрын
Thanks so much
Thank you. Great video.
@RezaDorrani
Жыл бұрын
Thanks Adam
Reza… you are awesomely awesome!!!
@RezaDorrani
9 ай бұрын
Thanks so much 😊
+10. Greetings from Costa Rica. this video is great!
@RezaDorrani
13 күн бұрын
Thanks so much
Thank you for this great video, very helpful.
@RezaDorrani
6 ай бұрын
Most welcome
Great! Thanks!
@RezaDorrani
9 ай бұрын
You're welcome!
Thank you, this was so helpful
@RezaDorrani
11 ай бұрын
Glad it was helpful!
Very helpful. Thank you,
@RezaDorrani
4 ай бұрын
Glad it was helpful!
That was brilliant, than for sharing.
@RezaDorrani
Жыл бұрын
My pleasure!
Great video !
@RezaDorrani
7 ай бұрын
Thanks
Brilliant Stuff, Thanks Reza
@RezaDorrani
2 жыл бұрын
Thank You
Great this worked perfectly for me :)
@RezaDorrani
Жыл бұрын
Great to hear!
Thank for sharing. One of the best. keep it up.
@RezaDorrani
11 ай бұрын
Most welcome
Awesome video as usual, great effort 👌
@RezaDorrani
Жыл бұрын
Thank You
You sir! Got a new follower
@RezaDorrani
5 ай бұрын
Thank You!!!
Super reza fantastic idea 💡 👏 👍 👌
@RezaDorrani
2 жыл бұрын
Thank you! Cheers!
Thanks!
@RezaDorrani
Жыл бұрын
Thank You
Reza actually inspires confidence and trust. When autoplay is on and I come across one of his videos, I know to put my food down and pay attention.
@RezaDorrani
Жыл бұрын
Thanks so much. I hope to keep working hard and provide valuable content. Its all about maintaining the trust.
Thank you for sharing information.
@RezaDorrani
Жыл бұрын
Most welcome
Thank you this is very helpful 😊
@RezaDorrani
Жыл бұрын
Happy to hear that. Thanks for watching.
Super information to use. 👍
@RezaDorrani
8 ай бұрын
Glad it was helpful!
You are blessed.
@RezaDorrani
3 ай бұрын
Thank You
Excellent explanation
@RezaDorrani
Жыл бұрын
Thank You
amazing job
@RezaDorrani
Жыл бұрын
Thanks!
Loving it Reza
@RezaDorrani
2 жыл бұрын
Thanks
Amazing video
@RezaDorrani
Жыл бұрын
Thanks!
WOW.... 👍 💥
@RezaDorrani
2 жыл бұрын
Thanks!
Bro you are a genius
@pngtrips6846
Жыл бұрын
I was so excited when it worked as I tried it out.
@RezaDorrani
Жыл бұрын
😊
@RezaDorrani
Жыл бұрын
👍
Thanks
@RezaDorrani
8 ай бұрын
Thank You
nice method
@RezaDorrani
2 жыл бұрын
Thanks
Hola a todos! Primero que todo agradecer a Reza por su increíble video, me ayudó mucho. Tuve el error en el cuál la automatización se quedaba en un bucle perpetuo, solo paso a recordarles que primero que todo revisen los permisos de adjuntar archivos de su lista de SharePoint, pase horas investigando y probando diversas maneras y simplemente era ese permiso. 😁
@RezaDorrani
28 күн бұрын
Thanks for sharing.
simply wow
@RezaDorrani
8 ай бұрын
Thanks
Congrats on the channel!! it has been very helpful!! Quick question, how can I pull additional data (from the user) from Active Directory ( ID, location, Country, etc.) and store it on the SharePoint List?
@RezaDorrani
2 жыл бұрын
Thanks for watching and liking the videos on the channel. You can use flow and query AD using Office 365 user's connector to pull the data. I do not have a video reference on this scenario though. I will recommend checking on the forums at powerusers.microsoft.com/ in case someone has done something similar.
Wow, this video is an eye opener! This is really great! One question: where can I find the JSON code you mentioned for SharePoint list formatting?
@RezaDorrani
2 ай бұрын
Welcome! I work hard on video descriptions :) Link should be somewhere there.
Great video!! very easy to follow. do you have a video that guides you with OneDrive as well?
@RezaDorrani
4 ай бұрын
Thank You! Onedrive you mean where forms stores the files? That is shown in video.
Another great training video, well done Reza! I would like to ask you a question. Is there any way to collect form name / form ID and save it to Excel table or SP list related to answer? I am building a flow where responses from many forms that are structured the same are going to be saved in Excel. I'd like to have them in that table with information about the Form name they come from. Thank you!
@RezaDorrani
Жыл бұрын
Flow works for 1 form. Many forms means many flows. You could always add the form name per flow when posting data.