How to select links in sequence using Powerpoint

Alan Lowery 0 Reputation points
2025-03-11T17:23:52.63+00:00

I have split a very large Powerpoint presentation (1.6Gb) into several smaller presentation files, due to performance issues with our corporate network. I have created an index page on the first presentation which uses links to open the other files.

I would like to run through the files in the index in sequence, as if I had one big presentation. Once the previous presentation has finished, step back to the index page, and with a click (or after a few seconds) start the next presentation in the index list.

I can't seem to find a function in the automation section which will do this.

PowerPoint Management
PowerPoint Management
PowerPoint: A family of Microsoft presentation graphics products that offer tools for creating presentations and adding graphic effects like multimedia objects and special effects with text.Management: The act or process of organizing, handling, directing or controlling something.
239 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Emi Zhang-MSFT 28,666 Reputation points Microsoft External Staff
    2025-03-12T06:58:09.5+00:00

    Hi,

    You can use VBA code to help you get the result, try this following steps:

    1. Create a Macro:
      • Open PowerPoint and press Alt + F11 to open the VBA editor.
      • In the left pane, find your presentation and right-click on it, then select Insert > Module.
      • In the module, enter the following code:
             Sub OpenNextPresentation()
                 Dim pptApp As Object
                 Dim pptPres As Object
                 Dim indexSlide As Object
                 Dim nextFile As String
                 
                 ' Set PowerPoint application object
                 Set pptApp = CreateObject("PowerPoint.Application")
                 
                 ' Open the index presentation
                 Set pptPres = pptApp.Presentations.Open("C:\path\to\index\presentation.pptx")
                 
                 ' Get the index slide
                 Set indexSlide = pptPres.Slides(1) ' Assuming the index slide is the first slide
                 
                 ' Get the next file path (based on your index slide setup)
                 nextFile = indexSlide.Shapes(1).TextFrame.TextRange.Text ' Assuming the file path is in the first shape
                 
                 ' Open the next presentation
                 pptApp.Presentations.Open nextFile
                 
                 ' Wait a few seconds, then close the current presentation and return to the index slide
                 Application.Wait (Now + TimeValue("00:00:05"))
                 pptApp.Presentations(nextFile).Close
                 pptPres.SlideShowWindow.View.GotoSlide (1) ' Return to the index slide
             End Sub
        
    2. Run the Macro:
      • Close the VBA editor and return to PowerPoint.
      • Press Alt + F8 to open the macro dialog box, select OpenNextPresentation, and run it.

    This macro will open the next presentation listed on your index slide, wait a few seconds, close it, and return to the index slide. You can adjust the waiting time and the way the file paths are retrieved based on your specific setup.

    Just checking in to see if the information was helpful. Please let us know if you would like further assistance.


    If the response is helpful, please click "Accept Answer" and upvote it.

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.