How the hell do you manage to make 20 slides 64MB ?!?
— Eloi Casali (@Eloi_Casali) March 11, 2015
A familiar cry of anguish, heard in offices around the world.
Even with fast connections and near infinite storage, unwieldy PowerPoint files are still not a good thing. They slow down PCs and clog up email inboxes.
Here’s two tips to shrink PowerPoint file sizes, without affecting how they look.
Many people know this. It’s quick and always worth doing, especially if there’s a lot of high resolution photography in the slides.
- Mac: File > Reduce File Size…
- PC: Select any image > Picture Tools / Format > Compress Pictures
- Picture quality should be ‘Best for viewing on screen (150ppi)’. If you’re printing PowerPoint slides you’re doing it wrong!
- Check ‘Remove cropped picture regions’
- Apply to all pictures in the file.
Remove unused slide layouts
This method is not widely known, but can reduce file sizes dramatically. I’ve seen file sizes decrease by up to 40MB by doing this.
PowerPoint files are rarely the work of one author. Usually they’re the bastard child of many other decks.
Files start to get really big when you get lots of master layouts that aren’t used. Especially if your company uses fancy, hi-res background images as part of its slide design.
First, you need to view the master:
- Mac: View > Master > Slide Master or ⌥⌘1
- PC: View > Master > Slide Master
Then, hover the mouse cursor over a layout until a tool tip appears like this:
In the example above, you can see the layout is used by few slides.
But in this example, the layout isn’t used at all and it has a background image that adds to the file size.
Just select that layout and delete it. Then go through all the layouts, hovering over each one to see if they’re actually used.
Wait. Isn’t that massively tedious?
Yes, of course! Incredibly tedious. So here’s a macro that does it for you.
Sub Delete_unused_master_slides() Dim I As Integer Dim J As Integer Dim oPres As Presentation Set oPres = ActivePresentation On Error Resume Next With oPres For I = 1 To .Designs.Count For J = .Designs(I).SlideMaster.CustomLayouts.Count To 1 Step -1 .Designs(I).SlideMaster.CustomLayouts(J).Delete Next Next I End With MsgBox ("Unused Master slides removed") End Sub
Or you can download this PPTM file which has the macro in it.
Of course, don’t play about with macros if you don’t know what you’re doing. Don’t complain if this macro causes you to lose work or your computer to explode. I will laugh at you if you do, and send you GIFs of dancing animals for eternity.
You have been warned.
Thanks to Jamie Brighton who had kept a copy of my macro after I had accidentally deleted it.