Supercharge your PowerPoint productivity with
Supercharge your PPT Productivity with PPTools - Click here to learn more.

Proud member of


Image Export converts PowerPoint slides to high-quality images.

PPT2HTML exports HTML even from PowerPoint 2010 and 2013, gives you full control of PowerPoint HTML output, helps meet Section 508 accessibility requirements

Merge Excel data into PowerPoint presentations to create certificates, awards presentations, personalized presentations and more

Resize your presentations quickly and without distortion

Language Selector switches the text in your presentation from one language to another

FixLinks prevents broken links when you distribute PowerPoint presentations

Shape Styles brings styles to PowerPoint. Apply complex formatting with a single click.

Add the current path and file to every slide

This sets the footer text to the current presentation's full path and file name.

Sub FilenameInFooter()

Dim FooterText As String

' And set it to the current presentation's full path/name
FooterText = ActivePresentation.FullName
' or if you prefer just the name use
' FooterText = ActivePresentation.Name

    If ActivePresentation.HasTitleMaster Then
        With ActivePresentation.TitleMaster.HeadersFooters
            With .Footer
                .Text = FooterText
                .Visible = msoTrue
            End With
        End With
    End If

    With ActivePresentation.SlideMaster.HeadersFooters
        With .Footer
            .Text = FooterText
            .Visible = msoTrue
        End With
    End With

    With ActivePresentation.Slides.Range.HeadersFooters
        With .Footer
            .Text = FooterText
            .Visible = msoTrue
        End With
    End With

End Sub

Here's a different approach. This adds a text shape to each slide and adds the filename and date to it.
If there's already a text box from a previous use of the macro, the macro uses the existing box, otherwise it creates one.

Sub AddTextBoxDateFilename()
' Adds a text box with date and filename to each slide
' You must first save the presentation at least once before using this

    Dim oSl As Slide
    Dim oSh As Shape

    On Error GoTo ErrorHandler

    For Each oSl In ActivePresentation.Slides
        ' do we already have a filename/date text box?  If do, use it:
        On Error Resume Next
        Set oSh = oSl.Shapes("FilenameAndDate")
        On Error GoTo ErrorHandler

        If oSh Is Nothing Then  ' no text box there already, create one

            ' change the position and formatting to suit your needs:
            Set oSh = oSl.Shapes.AddTextbox(msoTextOrientationHorizontal, 0, 510, 720, 28.875)

            With oSh

                .Name = "FilenameAndDate"

                .TextFrame.WordWrap = msoTrue
                With .TextFrame.TextRange.ParagraphFormat
                    .LineRuleWithin = msoTrue
                    .SpaceWithin = 1
                    .LineRuleBefore = msoTrue
                    .SpaceBefore = 0.5
                    .LineRuleAfter = msoTrue
                    .SpaceAfter = 0
                End With

                With .TextFrame.TextRange.Font
                    .NameAscii = "Arial"
                    .Size = 18
                    .Bold = msoFalse
                    .Italic = msoFalse
                    .Underline = msoFalse
                    .Shadow = msoFalse
                    .Emboss = msoFalse
                    .BaselineOffset = 0
                    .AutoRotateNumbers = msoFalse
                    .Color.SchemeColor = ppForeground
                End With
            End With    ' shape

        End If  ' osh is nothing

        ' now we know there's a shape by the correct name so
        Set oSh = oSl.Shapes("FilenameAndDate")
        With oSh.TextFrame.TextRange
            .Text = ActivePresentation.FullName & vbTab & Format(Now, "mmmm dd, yyyy")
        End With

        Set oSh = Nothing

    Next    ' slide

    Exit Sub

    MsgBox ("There was a problem:" _
        & vbCrLf _
        & Err.Description)
    Resume NormalExit

End Sub

See How do I use VBA code in PowerPoint? to learn how to use this example code.

Did this solve your problem? If so, please consider supporting the PPT FAQ with a small PayPal donation.
Page copy protected against web site content infringement by Copyscape Contents © 1995 - 2022 Stephen Rindsberg, Rindsberg Photography, Inc. and members of the MS PowerPoint MVP team. You may link to this page but any form of unauthorized reproduction of this page's contents is expressly forbidden.

Supercharge your PPT Productivity with PPTools

content authoring & site maintenance by
Friday, the automatic faq maker (logo)
Friday - The Automatic FAQ Maker

Add the current path and file to every slide
Last update 07 June, 2011