This article describes how to automatically populate a PowerPoint PPTX presentation with data from a SharePoint list using Processes in Power Automate (Microsoft Flow).
Skip the reading and watch our video for a visual walkthrough of this article:
Processes are a Plumsail Documents feature with an intuitive interface for creating documents from templates.
In this example, we will generate a PPTX project report using data pulled from the SharePoint list. This is what our list looks like:
The template we will be using illustrates a more complex logic of dynamically creating a separate slide for each project in the list. You can download the template here.
Hint
The second slide in the template contains a {{Project.PageBreak}}
token that prevents other slides from being duplicated. This token doesn’t need to have a value.
Here is an example of the output document:
Register or log in to your Plumsail account to start configuring the process.
We will need to create a new process. To do that, go to the Processes section in your Plumsail account and click ‘Add process’, and select ‘Start from blank:
Select PPTX as the template type:
Name the process and click ‘Next’ to proceed. Then you’ll jump to the ‘Configure template’ step.
There are two internal steps that will guide you through the configuration:
Editor
Settings
The Editor mode allows you to build the template from scratch or upload a pre-made one. Feel free to upload the project report template that we showcased above.
Click ‘Edit online’ to edit the title and make any other changes you desire:
Click Save & Next to go to the Settings substep.
Here you’ll see the following parameters:
Template mode
It is Testing by default. This means you won’t be charged for running this process, but the result document will have a Plumsail watermark. Switch it to Active to remove the watermark.
Output filename
You can use tokens to make the filename unique. They work the same way as in the template. For instance, we use the date token to define the output file name - {{@date}:format(MM/dd/yyyy)}
. The output presentation will have the following name: Plumsail - Projects Report - 02/23/2023.
Output type
By default, it corresponds to the format of your template. As we are using a PowerPoint template, it’s set to PPTX. We’ll leave it as is.
Test template
Once you’ve customized all the settings, you can test the template to see the result.
When everything is in place, click Save & Next to set up deliveries.
As a matter of demonstration, we will deliver the result document to SharePoint library. See all the available delivery methods here.
Note
You will also be able to export the output document in Power Automate flow.
Connect your site, select the desired library and folder where the output document will be saved:
We will link SharePoint to PowerPoint and pull the data from our SharePoint list by using Power Automate (Microsoft Flow).
The first step is to select an instant cloud flow that will retrieve data from the SharePoint list and then run the process we created in previous steps.
This is what the complete flow looks like:
Below is a step-by-step explanation of how to create it from scratch.
You can actually pick any trigger. For example, you can start flow on file creation in a SharePoint document library. We use Manually trigger a flow trigger here to simplify the flow.
We will use the ‘Get items’ action to get entries from our SharePoint list.
Let’s create an array that will contain all the data obtained from the ‘Get items’ action. Enter a variable name and select the Array type for it:
We’ll add an ‘Append to array variable’ action and fill it with dynamic data from our SharePoint list:
Use tokens from the template and available variables from the ‘Get items’ action.
Finally, let’s add an action that will trigger the created process. Start document generation process with JSON is an action from the Plumsail Documents connector.
If this is your first time using the Plumsail Documents connector, Power Automate will request the Connection Name and API Key.
You can type any name for the connection, for example Plumsail Documents.
Once the connection name is filled out, create an API key in your Plumsail Account, copy and paste it into the Access Key field, and then click Create.
You will need to select the process you created in the ‘Process name’ field and specify JSON data in the ‘Template data’ field:
We’re all set to create presentations from SharePoint list! 🎉 See how the resulting file looks:
We can see that our PowerPoint Presentation pulled data from the SharePoint list using Plumsail Processes and Power Automate. As the end result each item from SharePoint list is presented in a separate slide in PPTX presentation.
Hopefully, now you know how to generate a PowerPoint PPTX presentation and dynamically fill slides with data from a SharePoint list. In case you need to export PowerApps data to PowerPoint templates, similar approach can be used. Just replace the SharePoint trigger with a Power Apps one and you are good to go.
If you have any questions, please feel free to contact us at support@plumsail.com — we’ll be happy to help! If you’re new to Plumsail Documents, sign up to get a free 30-day trial.