I have code in Word that copies a folder, pastes the folder in a similar area, and renames the files to the current week number.
Inside a file within the folder, there is a PowerPoint presentation. The presentation has a footer with text and I want update that text within the Word code. I've tried many different things.
This is my current code:
Dim FSO As Object
Dim FromPath As String
Dim ToPath As String
Message = Format(Date, "ww", vbSunday)
'if message < 10 then it will be KW0 + WEEK NUMBER. IF IT IS BIGGER THAN TEN, IT WILL BE KW + NUMBER.
If Message < 10 Then
FromPath = "directory here"
ToPath = "directory here"
End If
If Message >= 10 Then
FromPath = "directory here"
ToPath = "directory here"
End If
If Right(FromPath, 1) = "\" Then
FromPath = Left(FromPath, Len(FromPath) - 1)
End If
If Right(ToPath, 1) = "\" Then
ToPath = Left(ToPath, Len(ToPath) - 1)
End If
Set FSO = CreateObject("scripting.filesystemobject")
If FSO.FolderExists(FromPath) = False Then
MsgBox FromPath & " doesn't exist. Please speak to me."
Exit Sub
End If
FSO.CopyFolder Source:=FromPath, Destination:=ToPath
If Message < 10 Then
Name "directory here" _
As "directory here"
Name "directory here" _
As "directory here"
End If
If Message >= 10 Then
Name "directory here" _
As "directory here"
Name "directory here" _
As "directory here"
End If
The above works.
Moving on to the opening of the presentation is the following: (Note: the presentation opens but I'm unable to edit the footer within the VBA code.)
Dim opptapp As PowerPoint.Application
Dim oPPTFile As PowerPoint.Presentation
Dim oPPTSlide As PowerPoint.Slide
Set opptapp = CreateObject("PowerPoint.Application")
opptapp.Visible = msoTrue
If Message < 10 Then
Set oPPTFile = opptapp.Presentations.Open(FileName:="directory here")
End If
If Message >= 10 Then
Set oPPTFile = opptapp.Presentations.Open(FileName:="directory here")
End If
ActivePresentation.Slides(1).HeadersFooters.Footer.Text = "Volcano Coffee"
MsgBox "The pack for next week has now been generated!"
End Sub
ActivePresentation
when you've already instantiatedoPPTFile
- use that. – Cindy Meister