Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Aktuelle PPT - Foliennummer auslesen

Forumthread: Aktuelle PPT - Foliennummer auslesen

Aktuelle PPT - Foliennummer auslesen
Pascal
Guten Tag zusammen
Ich möchte aus Excel raus die Foliennummer einer im Hintergrund aktiven PPT - Datei ermitteln. Geht das ?
Soweit bin ich schon gekommen:
Folien = objPP.Activepresentation.Slides.Count
Diese Zeile setzt die Anzahl Folien der aktiven Präsentation in die Variable "Folien"
test = objPP.Activepresentation.Name
Diese Zeile setzt den Namen der aktiven Präsentation in die Variable test
wie kann ich nun den Namen (oder die Foliennummer) der aktiven Folie ermitteln ?
Ziel soll es dann sein, dass ich aus Excel raus mit einem Befehl die aktive Folie festlegen kann.
danke herzlich für Eure Hilfe !
Anzeige
AW: Aktuelle PPT - Foliennummer auslesen
21.03.2012 17:19:03
Kawensmann
Hallo,
so bekommst du die Foliennummer:
objPP.ActivePresentation.SlideShowWindow.View.Slide.SlideIndex
und so den Foliennamen:
objPP.ActivePresentation.SlideShowWindow.View.Slide.Name
Die Folie wechselst du mit:
objPP.ActivePresentation.SlideShowWindow.View.GotoSlide 1

Gruß
Kawensmann
Anzeige
AW: Aktuelle PPT - Foliennummer auslesen
22.03.2012 06:01:22
Pascal
Hi !
Damit werde ich bestimmt weiterkommen.
Herzlichen Dank !
AW: Aktuelle PPT - Foliennummer auslesen
23.03.2012 08:24:59
Selina
Guten Tag nochmals !
Leider komm ich mit diesen Codes nicht weiter :-(
Ich habe zwischenzeitlich mal meinen Code wie folgt umgebaut und umprogrammiert:
MsgBox powerPointApplication.ActivePresentation.SlideShowWindow.View.Slide.SlideIndex
Wenn ich diese Zeile laufen lasse (klar doch, ich habe vorher die powerpointApplication deklariert und auch über diese Zeile hier auf Set gesetzt:
Set powerPointPresentation = powerPointApplication.ActivePresentation
Resultat dieser Test-Message-Box ist korrekterweise also die Aktuelle Foliennummer. Aber leider nur, wenn die PPT im Hintergrund als Bildschirmfüllende Präsentation am Laufen ist.
Ich brauch aber ne Möglichkeit, die Aktuelle Folie auch dann per Message-Box auszugeben, wenn die PPT im Hintergrund zwar geöffnet ist, allerdings nicht im Präsentationsmodus läuft.
Wie geht das ?
Zudem such ich auch noch eine Möglichkeit, nebst der aktuellen Foliennummer auch noch den kompletten Pfad auf diese im Hintergrund geöffnete PPT auszugeben.
Geht das irgendwie ?
wäre wirklich Supersaunett, wenn du mir hier weiterhelfen könntest.
Grüsse
Anzeige
AW: Aktuelle PPT - Foliennummer auslesen
23.03.2012 09:43:43
Kawensmann
Hallo,
ok, wenn die Präsentation nicht läuft, sollte es so gehen:
MsgBox powerPointApplication.ActiveWindow.View.Slide.Name
'oder
'MsgBox powerPointPresentation.Windows(1).View.Slide.Name
Den Pfad bekommst du so:
MsgBox powerPointPresentation.FullName
Gruß
Kawensmann
Anzeige
AW: Aktuelle PPT - Foliennummer auslesen
24.03.2012 18:53:41
Pascal
Hallo Kawensman
Ich habe mal deinen Code wie folgt ausprobiert:
Private Sub CommandButton1_Click()
Set powerPointApplication = GetObject(, "PowerPoint.Application")
Set powerPointPresentation = powerPointApplication.ActivePresentation
MsgBox powerPointPresentation.FullName
End Sub
Leider aber läuft der Code auf Fehler:
Variable nicht definiert. Hmmm ?
was mach ich falsch ?
Anzeige
AW: Aktuelle PPT - Foliennummer auslesen
26.03.2012 09:28:38
Kawensmann

Wenn ich diese Zeile laufen lasse (klar doch, ich habe vorher die powerpointApplication deklariert und auch über diese Zeile hier auf Set gesetzt:
Verarsch jemand anderen, Selina-Pascal ...
AW: Aktuelle PPT - Foliennummer auslesen
26.03.2012 10:27:42
Pascal
Hallo Kawensmann
Hier ging es in keiner Art und Weise darum, dass ich jemanden verarschen will oder wollte !!!
Die zwei verschiedenen Logins kommen daher:
im Geschäft - da log ich mich selber mit Pascal ein
daheim, da war meine Frau eben auch im Herber-Forum unterwegs und eingeloggt. (Selina)
Da fragte ich Sie, ob ich gleich auch noch kurz meinen Beitrag kurz kommentieren dürfe.
Deshalb also mal mit Pascal, mal mit Selina eingeloggt.
SORRYYY !!!!
Anzeige
AW: Aktuelle PPT - Foliennummer auslesen
26.03.2012 12:41:38
Kawensmann
Es geht nicht um den Namen, sondern um das Zitat ...
Du weißt doch ganz offensichtlich, wie man eine Variable deklariert. Warum machst du's dann nicht?
AW: Aktuelle PPT - Foliennummer auslesen
26.03.2012 17:13:59
Pascal
Danke für den Hinweis !
So gings nun - zuminds im Beispiel mit dem Namen der Präsentation
Public Sub CommandButton1_Click()
Dim powerPointApplication As Object
Dim powerPointPresentation As Object
Set powerPointApplication = GetObject(, "PowerPoint.Application")
Set powerPointPresentation = powerPointApplication.Activepresentation
MsgBox powerPointApplication.Activepresentation.FullName
End Sub

Danke herzlich für die Hilfe und Hinweise ;-)
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Foliennummern in PowerPoint mit Excel auslesen


Schritt-für-Schritt-Anleitung

Um die aktuelle Foliennummer einer PowerPoint-Präsentation aus Excel auszulesen, kannst du VBA (Visual Basic for Applications) verwenden. Folge diesen Schritten:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Rechtsklick auf "VBAProject (DeinWorkbookName)" > Einfügen > Modul.

  3. Kopiere den folgenden Code in das Modul:

    Sub FoliennummerAuslesen()
       Dim powerPointApplication As Object
       Dim powerPointPresentation As Object
    
       ' PowerPoint Anwendung abrufen
       Set powerPointApplication = GetObject(, "PowerPoint.Application")
       ' Aktive Präsentation abrufen
       Set powerPointPresentation = powerPointApplication.ActivePresentation
    
       ' Foliennummer und Name der Folie ausgeben
       MsgBox "Aktuelle Foliennummer: " & powerPointApplication.ActivePresentation.SlideShowWindow.View.Slide.SlideIndex
       MsgBox "Aktueller Folienname: " & powerPointApplication.ActivePresentation.SlideShowWindow.View.Slide.Name
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Führe das Makro aus, um die aktuelle Foliennummer und den Foliennamen anzuzeigen.


Häufige Fehler und Lösungen

  • Fehler: Variable nicht definiert.
    Achte darauf, dass du die Variablen korrekt deklariert hast. Beispiel:

    Dim powerPointApplication As Object
    Dim powerPointPresentation As Object
  • Foliennummer wird nicht angezeigt, wenn die Präsentation nicht im Präsentationsmodus ist.
    Verwende den folgenden Code, um die Foliennummer auch im normalen Modus abzurufen:

    MsgBox powerPointApplication.ActiveWindow.View.Slide.SlideIndex

Alternative Methoden

Eine alternative Methode besteht darin, die Foliennummern in einer Excel-Tabelle zu speichern. Hierfür kannst du den folgenden Code verwenden, um die Foliennummern und Namen aller Folien zu durchlaufen und in Excel einzufügen:

Sub AlleFoliennummernSpeichern()
    Dim powerPointApplication As Object
    Dim powerPointPresentation As Object
    Dim Folie As Object
    Dim i As Integer

    Set powerPointApplication = GetObject(, "PowerPoint.Application")
    Set powerPointPresentation = powerPointApplication.ActivePresentation

    For i = 1 To powerPointPresentation.Slides.Count
        Set Folie = powerPointPresentation.Slides(i)
        Cells(i, 1).Value = Folie.SlideIndex
        Cells(i, 2).Value = Folie.Name
    Next i
End Sub

Praktische Beispiele

Hier ist ein einfaches Beispiel zur Verwendung der Foliennummer in einer PowerPoint-Präsentation:

Sub GeheZuFolie()
    Dim powerPointApplication As Object
    Set powerPointApplication = GetObject(, "PowerPoint.Application")

    ' Gehe zur Folie 3
    powerPointApplication.ActivePresentation.SlideShowWindow.View.GotoSlide 3
End Sub

Du kannst diese Beispiele anpassen, um mit Foliennummern in PowerPoint zu arbeiten, wie zum Beispiel die Foliennummern ab Seite 3 einzufügen oder die Foliennamen auf Englisch auszugeben.


Tipps für Profis

  • Vergewissere dich, dass PowerPoint im Hintergrund geöffnet ist, bevor du das Makro ausführst.
  • Nutze Debug.Print, um Fehler einfacher zu finden, indem du Variablenwerte im Direktfenster des VBA-Editors ausgibst.
  • Wenn du mit großen Präsentationen arbeitest, erwäge, die Foliennummern in eine separate Excel-Tabelle zu exportieren, um die Übersichtlichkeit zu erhöhen.

FAQ: Häufige Fragen

1. Wie kann ich die Foliennummer in einer bestimmten Präsentation abfragen?
Du kannst den Namen der Präsentation verwenden, um diese spezifisch anzusprechen:

Set powerPointPresentation = powerPointApplication.Presentations("DeinPräsentationName.pptx")

2. Ist es möglich, die Foliennummern in einer Excel-Tabelle zu speichern?
Ja, du kannst die Foliennummern und Foliennamen in Zellen einfügen, indem du die oben genannten Codes anpasst.

3. Funktioniert das auch in der neuesten Version von PowerPoint?
Ja, die beschriebenen Methoden funktionieren in den meisten modernen Versionen von PowerPoint, die VBA unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige