How To Run Personal VBA Macros in Microsoft PowerPoint
PowerPoint Is Not Excel!
I have spent probably 90% of my Microsoft Office usage inside Excel. Because of this, I tend to assume if I can do it in Excel, I probably can do it in any other Office application. I mean, they’re created by the same company, right?
It only makes sense that if there is a ThisWorkbook Excel VBA command and a ThisDocument Word VBA command, there would also be a ThisPresentation command within PowerPoint’s VBA language. Wrong!
Well, this post is going to cover another scenario where I assumed PowerPoint would act more like its siblings, and luckily, thanks to some outside inspiration, I can provide you with a great workaround.
If you use VBA macros, then you most likely understand how powerful they can be when you write code that works in a more generalized fashion instead of for a particular spreadsheet or Word document. Examples could include formatting a selection of cells a particular way (ie fill color, font size, number format, etc..) or automatically emailing your spreadsheet as an attachment to your manager. These “personal” macros end up saving us time and hassle on a daily basis, so when I started venturing into writing VBA code for PowerPoint, I naturally wanted to develop personal macros for my presentations as well.
One Big Problem…
After becoming extremely confused, I came to find out PowerPoint doesn’t allow for a personal macro file. My next thought was to create an add-in file and link the subroutines (macros) to my Quick Access Toolbar (QAT). Unfortunately, the PowerPoint QAT only will bring in VBA macros from macro-enabled presentations. Below I have a PowerPoint Add-in file and a macro-enabled file opened. ONLY the macro-enabled code is shown in the Listbox! What’s the point of even giving us this option Microsoft!?
So Here’s The Workaround
First off, I want to thank PowerPoint MVP John Wilson for providing me with this solution and offering to share the workaround he has created. With that said, the way John recommends executing personal macros is through the PowerPoint Ribbon.
Now you might be thinking, “I don’t have any idea how to create my own ribbon!” or maybe even “I didn’t know you could make your own ribbon tab?!” Well, that’s where John’s AMAZING idea comes into play. He sent me a template he created, letting anybody add 5 macros to a new ribbon tab with custom button labels. This was pure genius and I immediately thought to myself, “Why didn’t I think of that”!
I made some modifications to John’s original Ribbon template based on my personal preferences and I think you’re going to love this workaround.
Included inside the PowerPoint file (download below for free) is a set of instructions that will show you where to add your VBA code subroutines and how to save the file as a PowerPoint add-in file. Please let me know in the comments section below if you have any trouble with this file. Enjoy!
How Do I Get The Custom Ribbon Template?
If you would like to get a copy of the PowerPoint template I reference throughout this article, feel free to directly download the file by clicking the download button below.
After 10+ years of creating macros and developing add-ins, I've compiled all the hacks I wish I had known years ago!
How To Use VBA Code With Oracle’s Smart View Add-in
What Is The Oracle Smart View Add-in? The Smart View Excel Add-in is a free Oracle tool that allows you...
How To View PowerPoint Add-in VBA Code Inside Visual Basic Editor
Where Did My Code Go? That was the question I was asking myself when I first began to create PowerPoint...
Chris is a finance professional and Excel MVP recognized by Microsoft since 2016. With his expertise, he founded TheSpreadsheetGuru blog to help fellow Excel users, where he shares his vast creative solutions & expertise. In addition, he has developed over 7 widely-used Excel Add-ins that have been embraced by individuals and companies worldwide.