How to Split a PowerPoint into Separate Slides in Power Automate

Cloudmersive
5 min readDec 13, 2024

--

PowerPoint files can get pretty large, and as a result, they’re not always the most convenient file type to share. It’s often best to share individual PowerPoint slides with the folks who need them rather than send an entire bulky, multi-slide presentation all at once.

To share individual slides from any given PowerPoint, we first need to separate each slide from the full presentation into its own PowerPoint document. We can accomplish this in small-scale cases by manually copying the slides we need into their own blank presentations, but for a large-scale need, we’ll be much better off finding a programmatic solution.

Split PowerPoints in Power Automate

In Power Automate, we can easily split any PowerPoint presentation into a series of individual slides and store those slides as their own individual presentations. We can automate this process to split entire folders of PowerPoint files, and we can also create one-off flow buttons that perform this action on individual presentations we select from our file system.

In this article, we’ll walk through an example flow that splits a PowerPoint file we select from our system into a series of individual & dynamically named slides. Each slide will become its own one-slide PowerPoint presentation in a folder of our choosing.

To build this flow, we’ll select the option to create an instant cloud flow with a manual trigger.

We’ll begin by clicking on the Manually trigger a flow action and adding a File input.

Next, we’ll add a new action and search the Power Automate connector library for Cloudmersive connectors.

This brings up a list of several different Cloudmersive connectors; we’re looking for the Cloudmersive Document Conversion connector, which has a green logo.

We’ll click “See more” to view the full actions list, and from there, we’ll CTRL+F search for an action titled Split a single PowerPoint Presentation PPTX into Separate Slides.

Upon selecting this action, we’ll need to create our Cloudmersive Document Conversion connection. To do that, we’ll need a Cloudmersive API key, and we can get one of those for free by visiting the Cloudmersive website and creating a free account. I’m using a free API key in this walkthrough; it allows a limit of 800 API calls per month with no commitments.

After we’ve created and authorized our connection, we’ll fill the two basic parameters — an Input File parameter and a File Name parameter — with dynamic content from our manual trigger step.

After that, we’ll click “Show all” to view one additional (advanced) parameter. This parameter lets us specify that we’d like to return each new PowerPoint file to our flow as regular content bytes, rather than as a series of temporary URLs. We’ll select “yes” here.

We’ll now wrap up our flow by creating a new PPTX file for each individual slide returned to our flow.

To do that, we’ll use a Create file action, and we’ll dynamically name our files using the original PowerPoint file name + the zero-based slide number. We’ll then satisfy the File Content parameter with dynamic content labeled PresentationContents.

We’ll notice that Power Automate automatically wrapped our Create file action in a For each control to deal with the array of file bytes returned by the Split PowerPoint action.

We’ll now save our flow and run a test. Since we’re triggering this flow manually, we’ll need to select a multi-slide PowerPoint from our file system.

When our flow finishes running, we’ll find each new PowerPoint in the folder we selected in our Create file action.

In my example, I saved the new PowerPoints alongside my original multi-slide PowerPoint file.

And that’s all there is to it!

If we want to remove the .pptx extension from within the file name, we can use the Slice function in Power Automate to trim the file name string when we create our new file. We can trim .pptx by specifying the proper start and end index in our file name string (for more information, check out Microsoft’s documentation on the Slice function).

--

--

Cloudmersive
Cloudmersive

Written by Cloudmersive

There’s an API for that. Cloudmersive is a leader in Highly Scalable Cloud APIs.

No responses yet