Frage

Ich habe viele Präsentationen, die außerhalb meines Unternehmens geteilt werden müssen, und ich brauche eine Möglichkeit, alle Lautsprechernotizen durchzuschlitzen und sie automatisch zu entfernen. Gibt es eine Möglichkeit, dies in VBA zu tun? Ich habe darüber gesucht, kann aber nichts finden.

War es hilfreich?

Lösung

Dieser Typ schrieb ein Skript, das Sprechernotizen von allen PowerPoint -Dateien in einem Verzeichnis entfernt. Sie sollten in der Lage sein, es an Ihre Bedürfnisse anzupassen.

Sub RemoveSpeakerNotes()
  Set objPPT = CreateObject("PowerPoint.Application")
  objPPT.Visible = True
  strComputer = "."
  Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
  Set FileList = objWMIService.ExecQuery _
    ("ASSOCIATORS OF {Win32_Directory.Name='E:\DirectoryContainingPresentations'} Where " _
    & "ResultClass = CIM_DataFile")
  For Each objFile In FileList
    If objFile.Extension = "pptx" Or objFile.Extension = "ppt" Then
      Set objPresentation = objPPT.Presentations.Open(objFile.Name)
      Set colSlides = objPresentation.Slides
      On Error Resume Next
      For Each objSlide In colSlides
        objSlide.NotesPage.Shapes(2).TextFrame.TextRange = ""
      Next
      objPresentation.Save
      objPresentation.Close
    End If
  Next
  MsgBox ("Done")
End Sub
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top