Home / Blog / Excel to PowerPoint
How-to · 2026

Excel to PowerPoint: 5 Ways to Automate a Recurring Report

Automating the charts is the easy half. The sentence beside each chart is what the room reads first, and most methods leave it saying last month.

By · Published November 1, 2026 · 8 min read

Excel has no button that turns a workbook into a deck, so automating a PowerPoint report means choosing how each object gets updated. There are five real routes. My short answer: use linked charts with formula-driven headlines for a small deck that one person maintains, and stop linking once it passes about ten changing objects. The test for any method is simple. After it runs, does the sentence on the slide still match the chart beside it?

The five routes compared

RouteChartsTablesSentencesWho keeps it working
1. Linked chartsYesAs linked objectsOnly with step 3 belowWhoever owns the file path
2. Links plus VBAYesAs linked objectsSameWhoever can read the macro
3. python-pptx scriptYesYesIf you code each oneA developer
4. A report automation toolYesYesVariesThe vendor, plus your setup
5. Ask from the slideYesYesYesYou, with the data in the tool

This is where to start, and for a small deck it may be where you stay.

  1. Build one workbook with a chart tab per slide. Paste new data into a raw tab, and let formulas and pivots feed the charts.
  2. Paste each chart as a link. Use Use Destination Theme & Link Data. Our paste options guide explains all five choices.
  3. Make the headlines follow the numbers. This is the step most guides skip. Write the sentence as a formula, then paste that cell into the slide as a link:
="Net sales "&IF(C2>=B2,"rose ","fell ")&TEXT(ABS(C2/B2-1),"0%")&" to "&TEXT(C2,"$#,##0")

The IF matters. A headline that only swaps the number will happily say "rose -4%" the first month the trend turns. It will not explain why anything moved, so this covers the headline and not the analysis.

The failure to plan for is quiet: a linked chart whose workbook has moved keeps displaying its last saved picture with no error on the slide. We cover the causes in why linked charts stop updating. Keep the workbook in a fixed location, and add the data date to the slide so a stale chart is visible.

Route 2: links plus a small macro

If you have many links, a macro saves the clicks:

Sub RefreshDeck()
    ActivePresentation.UpdateLinks
    ActivePresentation.Save
End Sub

It adds speed and nothing else, because it depends on the same links and the same file paths. Save the file as .pptm and send recipients a plain copy, since many companies block macros from outside.

Route 3: a python-pptx script

This is the first route that removes the workbook link entirely. The script reads your data and writes into a template deck, so it can run unattended:

from pptx import Presentation
from pptx.chart.data import CategoryChartData

deck = Presentation("monthly-template.pptx")
shapes = {s.name: s for s in deck.slides[2].shapes}

data = CategoryChartData()
data.categories = months
data.add_series("Net sales", net_sales)
shapes["NetSalesChart"].chart.replace_data(data)
shapes["Headline"].text_frame.text = headline

deck.save("monthly-report.pptx")

Two practical notes. Name your shapes in PowerPoint's Selection Pane and address them by name, because shape order changes whenever someone edits the template. And replace_data keeps the chart's formatting, which is why it beats rebuilding the chart from code.

The real cost is ownership. This is software now. When the person who wrote it leaves, or the export gains a column, the report stops until someone who can read Python turns up. I would only choose it if that person already exists and the deck is large enough to justify them.

Route 4: report automation tools

Dedicated add-ins and platforms sync Excel ranges or BI dashboards into slides on a schedule. They suit larger teams with many decks and a data source that is already clean. Check two things in a trial: what happens to the sentences on the slide, and what happens when a chart gains a category the template did not expect.

What breaks, and why it survives review

Charts and words fail differently. A broken chart usually looks broken. A stale sentence looks exactly like a correct one, in the deck's font, in a title position, and it is the first thing the room reads. The chart says June and the sentence says May, and the reviewer checking at speed sees a refreshed chart and moves on.

From the morning of the meeting

Every recurring deck I have been responsible for decayed in the same order. The charts stayed roughly current, because someone had built a way to update them. The headlines went next, because they were typed by hand and the slide already looked finished once its chart had moved. The executive summary went last and worst, because it was written once, when someone had time, and then edited by people afraid to touch it. If you can only automate one thing, do not assume it should be the chart. It is the object with the most mechanisms protecting it already.

Route 5: ask from the slide

Quiriz for PowerPoint removes the workbook from the path. You type a question such as net sales by month and press New slide, and the answer arrives as a native, editable chart in your theme with takeaways written from its figures. For a whole deck, describe what it is for and review the plan (each slide's title and question) before anything is built.

Next month, Refresh all asks every question again. Charts, tables, figures and takeaways come from the same pass over the data, which is what keeps the sentence and the chart in agreement. If your deck is in Google, Quiriz for Google Slides works the same way, with charts placed as images rather than editable objects.

Where to stay with Excel. Quiriz reads datasets, not your workbook's formulas. If the number comes out of a hand-built model with assumptions and scenarios in it, keep the model in Excel and link from it, because a question cannot reproduce a model it has never seen. The add-in needs PowerPoint 2021 or later, or PowerPoint on the web, and real PowerPoint tables need Microsoft 365 version 2504 or later, or the web.

See a deck refresh instead of rebuild

Try the questions on sample company data with no signup, then build your first slides in PowerPoint.

Try Quiriz free →

Frequently asked questions

Can you convert an Excel file to PowerPoint directly?
Not as a working report. Excel has no export to PowerPoint, and online converters generally turn sheet pages into slides that are pictures or rough tables. That is fine for sharing one table once. For a monthly report, you want charts that can be updated, so copying or linking from Excel is the better starting point.
What is the difference between this and linking a single chart?
Linking one chart is a paste decision, covered in our guide to inserting an Excel chart into PowerPoint. Automating a report is about the whole deck: every chart, table, total and sentence moving together, on a schedule, without one of them being left behind.
Can PowerPoint update links automatically without opening the file?
No. Links update when the deck is opened and you accept the prompt, or when something opens it and tells it to, such as a macro or a scheduled script. A deck nobody has opened is still showing its last saved charts.
Does python-pptx need PowerPoint installed?
No. It edits the .pptx file directly, so it can run on a server on a schedule. The trade-off is that it does not render anything, so nobody sees whether a longer label overflowed its box until a person opens the result.
Is a macro-enabled deck a problem?
It can be. A macro means saving as .pptm, and many companies block macros in files from outside. Keep the macro in the deck you maintain and send recipients a plain .pptx or PDF.