Use table to add rows to Excel (Office365) or Google Sheet from Public Web Form

Description

In this article, we are going to show you how you can use Data Table, MS Flow and Plumsail Forms connector in order to add multiple rows to an Excel Table in Office 365, though it can also be used for any Excel file stored online, for example in Dropbox or Box account, or even on your own site.

We will also show how to add multiple rows to a Google Sheet.

For an example on how to add just one row, check out the following article.

This is the form used in this example:

Orders Form

Excel Table

In this example, we are using OneDrive for Business as storage for our Excel file. When you create an Excel Online file in Office365, it's automatically stored there. We've created Orders.xlsx file and added table to it:

Orders Excel File

If you are working with a regular Excel file, you might not need to add a table, but the current version of Excel Online (Business) connector only supports adding rows to Tables, that's why it's better to create the Table straight away.

When you create custom Flow, follow this instruction to receive and parse data from submitted form - Creating Flow.

After Parsing JSON, we need to add data to Excel. Search for Excel Online (Business) and select Add a row into a table action:

Search for Excel Online (Business) connector

Next, we fill in all the required information about our file, the table we want to add a row to, as well as what information we want to add - we insert data parsed from the form. As you insert fields parsed from Data Table, the action will automatically switch to Apply to each:

Add a row into a table action - filled in

Apply to each means that this action will run once for every row in the Data Table.

Once the information is filled in, we can press Save Flow and test Flow submission with our Form:

Form Preview before submission

And here's the result after submission:

Result in Excel

Google Sheet

I've created Orders spreadsheet in my Google account:

Orders Google spreadsheet

There is no need to add a table to it, but you should name columns in the first row in order to assign values with MS Flow.

Now, you can create new custom Flow, by following this instruction - Creating Flow.

After Parsing JSON, search for Google Sheets and select Insert row action:

Search for Google Sheets

If this is your first time using this connector, you will most likely need to connect to your Google Account and give MS Flow access to your files. Once this is done, fill out the required info:

Insert row action - filled in

Once again, Apply to each will automatically be used once you add fields from the Data Table, and it means that the action will run once for every row in the Data Table.

After that, the Flow can be saved. To test it out, I once again fill out the form:

Form Preview before submission

And we get the following result:

Result in Google

You might have also noticed an additional column generated by MS Flow called __PowerAppsId__. It can be hidden away if necessary, at the same time it allows you to access the specific row with other Google Sheets actions, such as Get row, for example:

Google Sheets - Get row