Application.OpenThemeFile Method (PowerPoint)

Office 2013 and later
GitHub-Mark-64px

Contribute to this content

Use GitHub to suggest and submit changes. See our guidelines for contributing to VBA documentation.

Opens the specified theme file (*thmx).

expression .OpenThemeFile(themeFileName)

expression A variable that represents a Application object.

Parameters

Name

Required/Optional

Data type

Description

themeFileName

Required

String

The path of the theme file (*.thmx) to open.

themeFileName

Required

STRING

Return value

This example opens a theme file, gets the ID of the third variant in the theme, and applies it to the first slide in the presentation.


Sub ChangeThemeVariant()

    Dim name As String
    Dim path As String
    Dim variantID As String
    
    ' Get the name of the active theme family.
    name = ActivePresentation.TemplateName

    ' You need access to the Theme Family in order to access the variants.
    path = "C:\Program Files (x86)\Microsoft Office\Document Themes 15\" & _
        ActivePresentation.TemplateName & ".thmx"

    ' Get the variant ID of the third Variant
    ' and apply that variant to the presentation.
    variantID = PowerPoint.Application.OpenThemeFile(path).ThemeVariants(3).Id
    ActivePresentation.Slides(1).ApplyTemplate2 path, variantID

End Sub
Show: