Jirko
Insider auf Entzug
- Registriert
- Jan. 2002
- Beiträge
- 10.500
Hallo FB'ler,
ich will ein Schulungssystem aufbauen, in dem auch Powerpoint-Präsentationen genutzt werden. Da ich mehrere Zielgruppen anspreche, die teilweise jedoch identische (und regelmäßig zu aktualisierende) Inhalte sehen, wollte ich das über zielgruppenorientierte Präsentationen lösen. (Eine Präsi, mehrere Ansichten)
Das ist soweit auch kein Problem. Unschön wird es, wenn ich die einzelnen zielgruppenorientierten Präsentationen extra abspeichern und versenden will. Diese Option gibt es nämlich nicht. Drucken könnte ich sie zwar, aber abspeichern nicht. Zwar könnte ich über den Umweg über Drucken und einen PDF-Drucker PDF-Versionen erzeugen, das reicht mir aber nicht - ich brauche auch PPT-Versionen.
Nach kurzer Recherche habe ich bisher nur ein VBA-Makro gefunden, das so recht aber nicht funktionieren will. Da ich aber auch nicht so viel Ahnung von VBA habe, mag das auch einfach nur an meiner Inkompetenz liegen. Hier mal der entsprechende Code:
Meine Frage nun also: Wer kann mir genau erklären, wie ich den VBA-Code einpflegen muss, damit dieser funktioniert? Ich glaube ja, dass auch der Hinweis, dass man sich in der "Bildschirmpräsentationsansicht" befinden muss, wichtig ist. Doch wie starte ich das Makro dann in der Ansicht?
Alternativ: Wer kennt eine gescheitere Möglichkeit, das hinzubekommen? Vielleicht ist ja auch der Ansatz der zielgruppenorientierten Präsentationen nicht optimal. Mir wäre alles recht, solange ich am Ende eine Präsentation in der Hand halte, die ich aus anderen Präsentationen für bestimmte Hörer zusammenstellen kann (und das möglichst schnell und ohne viel Aufwand) und die entsprechende Änderungen der Unterpräsentationen übernimmt. (Quasi: Wie Zentral- und Filaildokumente in Word)
Ich bin für jede Hilfe dankbar.
Viele Grüße
Jirko
Hallo noch einmal.
Ich habe ein Makro gefunden, das reibungslos funktioniert. Alle zielgruppenorientierten Präsentationen werden dabei einzeln als PPT abgespeichert. Mein Problem ist damit gelöst - für alle, die selbst ewig googlen, hier der Code (Autor - meines Wissens - Dr. Eckehard Pfeiffer, der für Office anscheinend auch dicke Bücher schreibt. Reps also an ihn.):
ich will ein Schulungssystem aufbauen, in dem auch Powerpoint-Präsentationen genutzt werden. Da ich mehrere Zielgruppen anspreche, die teilweise jedoch identische (und regelmäßig zu aktualisierende) Inhalte sehen, wollte ich das über zielgruppenorientierte Präsentationen lösen. (Eine Präsi, mehrere Ansichten)
Das ist soweit auch kein Problem. Unschön wird es, wenn ich die einzelnen zielgruppenorientierten Präsentationen extra abspeichern und versenden will. Diese Option gibt es nämlich nicht. Drucken könnte ich sie zwar, aber abspeichern nicht. Zwar könnte ich über den Umweg über Drucken und einen PDF-Drucker PDF-Versionen erzeugen, das reicht mir aber nicht - ich brauche auch PPT-Versionen.
Nach kurzer Recherche habe ich bisher nur ein VBA-Makro gefunden, das so recht aber nicht funktionieren will. Da ich aber auch nicht so viel Ahnung von VBA habe, mag das auch einfach nur an meiner Inkompetenz liegen. Hier mal der entsprechende Code:
Beachten Sie, dass Sie vor Aufruf der nachfolgenden Prozedur in die
Bilschirmpräsentations-Ansicht wechseln müssen, da benannte Präsentationen
wohl nur dort existieren:
Private Sub Extract(strShowName)
Set prsThis = ActivePresentation
Set prsThat = Application.Presentations.Add
intNumberOfSlides = prsThis.Slides.Count
prsThis.SlideShowWindow.View. _
GotoNamedShow strShowName
While prsThis.SlideShowWindow.View.Slide _
.SlideNumber < intNumberOfSlides
prsThis.SlideShowWindow.View.Next
prsThis.SlideShowWindow.View.Slide.Copy
prsThat.Slides.Paste
Wend
prsThis.SlideShowWindow.View.Exit
End Sub
Meine Frage nun also: Wer kann mir genau erklären, wie ich den VBA-Code einpflegen muss, damit dieser funktioniert? Ich glaube ja, dass auch der Hinweis, dass man sich in der "Bildschirmpräsentationsansicht" befinden muss, wichtig ist. Doch wie starte ich das Makro dann in der Ansicht?
Alternativ: Wer kennt eine gescheitere Möglichkeit, das hinzubekommen? Vielleicht ist ja auch der Ansatz der zielgruppenorientierten Präsentationen nicht optimal. Mir wäre alles recht, solange ich am Ende eine Präsentation in der Hand halte, die ich aus anderen Präsentationen für bestimmte Hörer zusammenstellen kann (und das möglichst schnell und ohne viel Aufwand) und die entsprechende Änderungen der Unterpräsentationen übernimmt. (Quasi: Wie Zentral- und Filaildokumente in Word)
Ich bin für jede Hilfe dankbar.

Viele Grüße
Jirko
Ergänzung ()
Hallo noch einmal.

Ich habe ein Makro gefunden, das reibungslos funktioniert. Alle zielgruppenorientierten Präsentationen werden dabei einzeln als PPT abgespeichert. Mein Problem ist damit gelöst - für alle, die selbst ewig googlen, hier der Code (Autor - meines Wissens - Dr. Eckehard Pfeiffer, der für Office anscheinend auch dicke Bücher schreibt. Reps also an ihn.):
Sub Extract()
Dim prsThis As Presentation
Dim prsThat As Presentation
Dim sldThis As Slide
Dim sldThat As SlideRange
Dim nss As NamedSlideShow
Dim strName As String
Dim i As Integer
Set prsThis = ActivePresentation
For Each nss In prsThis.SlideShowSettings.NamedSlideShows
Set prsThat = Application.Presentations.Add
prsThat.ApplyTemplate prsThis.FullName
For i = 1 To nss.Count
Set sldThis = prsThis.Slides.FindBySlideID(nss.SlideIDs(i))
sldThis.Copy
Set sldThat = prsThat.Slides.Paste
sldThat.Design = prsThis.Designs(sldThis.Design.Index)
Next
strName = prsThis.FullName
prsThat.SaveAs Left(strName, Len(strName) - 4) & "-" & nss.Name
Next
End Sub