Tag Archives: Microsoft Teams

Microsoft Teams, Forms and Flow on the go!

This is the final post in this mini series where we looked at the simplicity and easy of integrating within the Office 365 stack.

Everything up to now is great! Exciting even. I can create richer user experiences without relying solely on the on Excel experience, collect and analyze responses and keep my team up to date.

What about the mobile experience? How does this all work out there?

I am running on an iPhone 7 Plus with iOS 11.2.2. I also tested this on my Amazon Fire HD 10, side-loaded with the Microsoft Apps, and I had the same experience there.

Start in the Microsoft Teams app

Fire up that Teams app and let’s take a look at the notifications we made with Flow real quick.

Flow posts in Teams on the iPhone mobile

Not too shabby! Formatting carried over pretty well!

Let’s check out the tabs

Team tabs on mobile iphone

This is when I start to get excited, just to be crushed…

Microsoft Forms in a Teams Tab on Mobile

Sadly when I press my form’s tab, I go to my browser and am presented with:

Forms tab in Teams

Yup, that’s just the Forms website. I pressed Get started, it let me login, then it just sent me to the editor view of Forms.

I went back to Teams and pressed the forms tab again, hoping now that I was logged in I could fill out the form. Sadly:

Pressing forms tab in Teams fail


I’m in edit mode again, not even in my form. So weird!

Microsoft Excel in Teams Tab on Mobile

Pressing my Excel tab in Teams on the iPhone was a wee bit better than Forms. It did send me out of the Teams app and into the Excel app, but it did put me in the right Excel file ;)

Excel tab in Teams opens the app

I can view the content as I would expect. Unfortunately not in Teams though.

Microsoft Teams mobile experience is much to be desired

The core conversation piece works well, I use it a lot across my teams on my phone. The tabs I generally avoid unless I’m ok with what I’ll get. Microsoft has some ground to make up here for sure!


This post wraps up my mini series, I hope you enjoyed it. My goal was to highlight how easy it is to integrate within the Office 365 stack, even easy for most business users! No development needed for a rich user experience on a simple day to day task like collecting data in Excel.

Please let me know what you think below in the comments! ‘Til next time, thank you!


Integrating Forms into Teams, bringing it home with Microsoft Flow

This post is the third post in this mini series as we look at how easy the Office 365 stack integrates. In this series, we will:

You have a form built, maybe to collect requests, feedback, issues, conference booth sign ups, raffle tickets, whatever. In a previous post we covered how to have the form submit content directly into your Excel file, removing the need to export the responses each and every time. We also covered how to embed the form in Teams

But, how do we now notify users that a form has been submitted? The creator of the form can receive email notifications, but there’s no i in TEAM. We want the team to know someone submitted a request, and then the team can do something about it.

Won’t the Teams Forms Connector suffice?

No. Not for what I want to do here. There are some limitations with this connector:

  • The notification is super generic, I can’t configure what values are included in the notification
  • It only shares the total number of shared responses, nothing about each response as we get them
  • I can only connect to one form at a time, per channel
  • I can only select forms which are group forms, my personal forms don’t show up

Here’s what you get with the connector, a daily status of results? BORING!

Microsoft Forms connector in teams is sad

Good bye connectors and hello Flow!

Microsoft Flow to the rescue!

Let’s bust out a Flow for letting your team know about new submissions!

Entire Microsoft Flow writing Forms to Teams

This Flow is a little more complex than might seem necessary. Since I’m using multi-value fields in the form, I need to parse those values. We’ll cover that in a little bit.

Let’s dive in deeper and see what we’re doing here.

Trigger: Microsoft Forms: When a new response is submitted


This trigger causes the the Flow to start whenever there’s a new submission. You’ll notice when you add it you get a drop down option. This is great if you have a personal Form, you can select one of your existing Forms:

Microsoft Forms trigger dropdown

However, in my case, and many others, we are selecting a Form that is a Group or a Shared form. (This form is a group form since I have it writing directly to the Excel file) In these scenarios we need to use the ID of the Form.

To do so, navigate to your form (jump to http://forms.office.com). Click your form and then copy the FormId from the URL, as highlighted in red:


Go back to your Flow, in the trigger drop down, select Enter custom value and paste in this value.

Flow Trigger: Microsoft Forms - When a new response is submitted

Action: Microsoft Forms – Get response details

Flow Action Microsoft Forms - Get response details

The trigger only returns the ID of the submitted form, no details, so now we need to pull the details. We do this with the Get response details trigger.

The Apply to each wrapper will appear automatically, when you interact with the trigger’s data, Flow automatically wraps it with a loop action that ensures that it’ll process all requests.

After you add the action Microsoft Forms – Get response details, you want to use the same form you used in the trigger, either select it from the drop down or use it’s ID (same thing we did in the trigger).

Then for the Response Id value, use the dynamic value Response Id from the trigger. This will prompt Flow to add the Apply to each wrapper.

Action: Office 365 Users – Get user profile (V2)

Flow action Office 365 Users - Get use profile

The Form details only includes the responder’s email address, and I’d like their display name included. I am using this action to simply get some details about the user who submitted the request.

Why V2? Cause it’s newer. Seriously, that’s all. There are several actions and triggers that have a V1/V2 variations. I always start with V2, and if it doesn’t have what I need I think switch to V1. My reasoning is that V1 may get deprecated sooner than V2, and V2 is newer and should have more options and be more reliable…. should…

Action: Data operations – Parse JSON

Flow action data operations parse json

Our Form allows the user to select multiple choices, as seen here:

Microsoft Forms Multiple Choice questions

If you’re not dealing with multiple choice questions, skip this section and head to the last one.

These selected values get saved as a string, in a JSON array format, like ["10a-12p","2p-4p"]. If this doesn’t make sense, that’s okay. That string value is actually a multi-value array, just in a single string format. These next two actions, Monday Array and and Tuesday Array convert this string value into an array object for us to work with.

The content value is the question from the form, Ideal time on Monday, and Ideal time on Tuesday, in their own actions.

The schema value is below, you can try copy/paste it, but I cheated to make this schema. If you click the Use sample payload to generate schema link at the bottom of the action, you can type in what the data looks like. So I clicked that, typed in ["asd","asd"] and clicked Done.

Data Operations Parse JSON sample schema

This inserted the schema for me, whew! (alternatively you can just copy/paste from here)

 "type": "array",
 "items": {
     "type": "string"

Action: Data Operations – Join

Microsoft Flow action Data Operations Join array

Next, I wanted to join the selected values together, and use some user friendly words. Remember, the selected value looks like ["10a-12p","2p-4p"]. By parsing the JSON into an array first, I can now join it so it’ll look like “10a-12p or 2p-4p”. Better right? (There’s an example at the bottom of what the original formatting looks like.)

The From value has the Body value from Monday Array, and Tuesday Array, in their respective actions.

The Join with is the word “or” with spaces on either side, like space or space, like ” or “. Simple right?

Action: Microsoft Teams – Post message

Microsoft flow action Teams - Post message

Finally, we post this info to Microsoft Teams. Select the target Team Id and Channel Id, and then specify the message.

The message supports HTML, which is nice, so we can add some formatting here. Here’s what I typed:

<p> [Display Name from Office 365 Users action] has signed up for the conference booth!</p>
<p><strong>Monday:</strong> [Output from Monday Times action]</p>
<p><strong>Tuesday:</strong> [Output from Tuesday Times action]</p>

And blamo!

Forms details in a message in Microsoft Teams

And here’s what the formatting would look like if I didn’t parse the JSON and join the array.

Unformatted post in Microsoft Teams from Forms


Are Incoming Webhooks an option?

Absolutely! I will have another post soon comparing using Incoming Webhooks to the Teams Post a message action, stay tuned!


That’s it for now, but there’s always more. In my form, I also collect the shirt size, so I could submit that data to an order request database, a SharePoint list, or even an Excel file, for someone to collect all orders.

We could also use the provided cell phone number to vet their information against Office 365, and kick off a review and approval process to update their contact information in O365!

I hope this Flow helped, and showed a good use case for integrating with Forms and Teams! ‘Til next time, Happy Flowin’!

Collect Survey Results Seamlessly in Microsoft Teams with Forms

This post is the the second post in this mini series as we look at how easy the Office 365 stack integrates. In this series, we will:

In my previous post, we quickly created a Form to collect data in our Excel file. If you have this type of form, or really any form, you may want to embed the form in your team so: team members can see the results quickly and easily; to solicit submission; or collaborate on editing the Form!

Microsoft Teams – Your collaboration hub

I’ve fallen completely in love with Microsoft Teams. It is what I’ve wanted out of the SharePoint space for yeeeears. Teams is far from complete, but is off to a solid start competing against Slack, and in my opinion, blowing it away. But I digress…

To add Forms to your team channel, we simply add a new tab! Really that simple.

Add Microsoft Forms to Teams

Press the + icon up in your tabs.

Microsoft Teams add a new tabThen select Forms

Microsoft teams add forms tab

Don’t get too distracted, focus, you can play with all of the other offerings later in here!

After you select Forms, you’ll be asked to create or add existing. In my case I am going to add existing, but if you wanted to, you could create a new one.

Adding Microsoft Forms to Teams

When I select the form I want to display, I can select what view of the form I want to show, this option is in the drop down, right below the forms list (in the above picture, it’s the drop down with the value Collect responses). The options are:

  • Collect responses – this will add the form in the submission view, allowing your users to submit entries.
  • Show results – this will show the results page of the form, including it’s charts and responses.*
  • Collaborate – this will show the form in edit mode, and anyone in the team will be able to edit the form’s layout. Very helpful when aiming to get feedback on your survey.

*If you select Show results, note the little checkbox “A web address will be created. Anyone with it can view a summary of responses.” This is basically saying that when selecting Show results, it is getting an anonymous link to the page, so anyone who finds the link could see your results. <shudder/>. A good alternative approach is to try my previous post in this series, save your results to Excel, and then show that in a tab instead.

I’m going to select Collect responses. I also unchecked Post to the channel about this tab, as I don’t want to share this example.

Once it’s added, your form is now in your channel!

Microsoft Forms in Teams

Next I will rename the tab so it’s more meaningful to my users. Click the menu in the tab and select Rename. I renamed mine to Booth Signup.

I also added my previously mentioned Excel file to my channel as a tab, so I can see my results:

Microsoft Excel Forms Results in TeamsDone!

In this short post we added our form to Teams to collect responses. In my next post we’ll notify the team of submissions using Microsoft Flow!

Update your Team with events from your Outlook Group Calendar using Microsoft Flow

As of this writing, there is no clean integration between an Outlook Group and Teams, other than the membership. The calendar, for instance, doesn’t reflect anywhere in Teams. Using the calendar is advantageous for the team, and I wanted to share new events with the team, to allow for awareness and conversations around our meetings.

Enter Microsoft Flow

This is a super simple flow, but powerful.

Create new post in Teams from your Calendar

Trigger: Office 365 Groups – When there is a new event

This trigger will run whenever a new event is created in your group’s calendar. Yea, that easy.

Action: Microsoft Teams – Post message

This action will then post a message to the General channel in my Team. The message is HTML formatted, which is great. I include the Subject line and start and end date of the event. The Start and End dates are Expressions, so I can format the dates. Start date is formatDateTime(triggerBody()?['start']?['dateTime'],'dddd, MMM d, yyyy hh:mm tt') and the end date is formatDateTime(triggerBody()?['end']?['dateTime'],'hh:mm tt').


We use our calendar for team meetings, outings, PTO and more, now we can all keep apprised and discuss them.

The calendar event showing in teams