Office: Dateipfad in Powerpoint 2003

Helfe beim Thema Dateipfad in Powerpoint 2003 in Microsoft PowerPoint Hilfe um das Problem gemeinsam zu lösen; Hallo, die Suche ergab leider nichts. Ich möchte gerne auf die Folien meiner Powerpoint Präsentation unten einen Dateipfad mit dabei haben. Dies... Dieses Thema im Forum "Microsoft PowerPoint Hilfe" wurde erstellt von kaiz0r, 26. Mai 2011.

  1. kaiz0r User

    Dateipfad in Powerpoint 2003


    Hallo,

    die Suche ergab leider nichts. Ich möchte gerne auf die Folien meiner Powerpoint Präsentation unten einen Dateipfad mit dabei haben. Dies will ich jedoch nicht jedesmal per Hand eingeben oder kopieren. Nun weiß ich bereits, dass PPT 2003 das von Haus aus nicht kann, aber anscheinend kann man sich ein Makro schreiben. Dabei bin ich im Internet auf folgenden Code gestoßen:

    Sub DateinameInFusszeile()
    With ActivePresentation
    if .HasTitleMasterThen
    .TitleMaster.HeadersFooters.Footer .Text = .FullName
    .TitleMaster.HeadersFooters.Footer.Visible = msoTrue
    End If
    .SlideMaster.HeadersFooters.Footer.Text = ActivePresentation.FullName
    .SlideMaster.HeadersFooters.Footer .Visible = msoTrue
    End With
    End Sub


    Leider kommt bei mir da immer ein Syntax fehler. Kennt sich da jmd. aus und kann das evtl. korrekt schreiben für mich? Die Präsentationen haben bereits ein Template und es sind mehrere Slides, falls das eine Rolle spielt.

    Weiß außerdem jmd. wie man ein Makro dauerhaft speichern kann, damit man nicht für jede Präsentation den Code einfügen muss? Mache das über den Visual Basic, aber das geht dann immer nur für die geöffnete ppt.
     
    kaiz0r, 26. Mai 2011
    #1
  2. miriki Erfahrener User
    Ich hab das jetzt nicht nachgebaut, aber 4 Sachen fallen mir auf:
    Code:
    if .HasTitleMasterThen
    Vor dem "Then" fehlt ein Leerzeichen.
    Code:
    .TitleMaster.HeadersFooters.Footer .Text = .FullName
    Vor dem ".Text" ist ein Leerzeichen zu viel.
    Code:
    .SlideMaster.HeadersFooters.Footer.Text = ActivePresentation.FullName
    Hier kann das "ActivePresentation" analog zur anderen Zeile weiter oben gestrichen werden, aber den "." stehen lassen! Das ist aber nicht die Fehler-Ursache, sondern nur Kosmetik.
    Code:
    .SlideMaster.HeadersFooters.Footer .Visible = msoTrue
    Vor dem ".Visible" ist ein Leerzeichen zu viel.

    Außerdem bin ich mir nicht ganz sicher, ob anstelle des "End If" nicht eher ein "Else" stehen sollte und das "End If" dann eine Zeile vor das "End With" gehört...

    Ich weiß zumindest, daß es in Excel mit den Vorlage-Mappen geht, wenn man ein Code-Modul in jeder neuen Mappe haben möchte. Ich schätze, das wird in PowerPoint nicht viel anders sein.

    Gruß, Michael
     
    miriki, 26. Mai 2011
    #2
  3. kaiz0r User
    Schonmal vielen Dank. Ich hab deine Verbesserungen soweit umgesetzt, bis auf das mit "Activepresentation", da ich dann nich weiß, was ich oben hinter "with" schreiben soll. Es sieht jetzt so aus

    Sub Test()
    With ActivePresentation
    If .HasTitleMaster Then
    .TitleMaster.HeadersFooters.Footer.Text = .FullName
    .TitleMaster.HeadersFooters.Footer.Visible = msoTrue
    Else
    .SlideMaster.HeadersFooters.Footer.Text = ActivePresentation.FullName
    .SlideMaster.HeadersFooters.Footer.Visible = msoTrue
    End If
    End With
    End Sub

    Es kommt jedoch leider immer die Fehlermeldung: "Außerhalb einer Prozedur ungültig" und "Sub Test ()" wird gelb markiert.

    Wäre echt super wenn mir da jmd. helfen könnte, brauch das dringend funktionierend.
     
    kaiz0r, 30. Mai 2011
    #3
  4. miriki Erfahrener User

    Dateipfad in Powerpoint 2003

    Da Du bei "With" bereits die "ActivePresentation benannt hast, muß sie hier, in der 2. Zeile, auch nicht mehr explizit aufgeführt werden. Deswegen kann "ActivePresentation" hier ersatzlos gestrichen werden, aber der führende "." vor "FullName" muß bleiben.

    Wie hast Du das ganze denn überhaupt im VBA-Editor untergebracht? Und wie soll die Routine ausgelöst / aufgerufen werden?

    Ich hab eine neue Präsentation erstellt und auf die 1. (und einzige) Seite einen Button gesetzt. Der Button ruft in seinem Body dann die Routine zum Setzen der Fußtzeile auf. Diese Routine wiederum ist in einem Extra-Codemodul. Das funktioniert auch soweit...

    Nachdem ich mal ein bißchen gegoogelt habe, stieß ich auf Folgendes:
    Re: VBA- Open Präsentation Ereignis
    Ich hatte Dein Problem nämlich mal nachbauen wollen und dachte mir, daß ein Ereignis "OnOpen" für die Präsentationsdatei ein guter Zeitpunkt wäre, um dann festzustellen, daß ich gar keine Ereignisse in PowerPoint gefunden habe.

    Gruß, Michael
     
    miriki, 30. Mai 2011
    #4
  5. kaiz0r User
    Hast dir ja richtig mühe gemacht, das hilft mir schonmal sehr weiter. Aber ganz steig ich noch nicht durch.

    Ich hatte einfahc den VBA-Editor geöffnet und ein Modul eingefügt, dann den VBA-Editor wieder beendet. Das wollte ich dann immer über Extras -> Makros -> Ausführen starten, aber leider war das dann nie in der Liste aufgeführt. Nur wenn ich es da neu anlage und einen namen gebe, taucht es auf.

    Wie impliziert man das denn dauerhaft?

    Versteh ich das richtig, dass dieser Button den du eingefügt hast, bei Klicken, automatisch die Fußzeile in den Folgefolien integriert?
    Ist dieser Button bei einer Präsentation sichtbar? Bzw. hat man ja normalerweise eine Startslide, da möchte man das ja ungern drauf haben.

    Ich schätze mal ich muss das über den Master irgendwie integrieren oder?
     
    kaiz0r, 30. Mai 2011
    #5
  6. miriki Erfahrener User
    Hmmm... Im Prinzip hab ich das auch nur so gemacht. In meinem Beispiel taucht es aber unter "Extras - Makro - Makros..." in der Liste auf und kann von dort aus auch gestartet werden.

    Wie ich schon schrieb: Bei Excel gibt's da Vorlage-Mappen, wo man das einbauen könnte. Die Möglichkeit hat man, soweit ich das sehe, auch mit PP. Eine neue P muß dann eben nur auf eben dieser Vorlage aufbauen und hat dann den VBA-Code gleich mit drin.

    Alternativ, und dann wohl ebenfalls bei PP möglich, ist der Weg über ein "Add-In", was ich aber noch nicht ausprobiert habe.

    Jup, mehr oder weniger. Er macht im Prinzip das gleiche, wie der Aufruf über das Makro-Menü. Der VBA-Code hinter dem Button besteht nur aus der einen Zeile, in der die Routine im globalen Modul aufgerufen wird.

    Was die (globale) Routine eigentlich macht: Es wird nicht die Fußzeile auf den Folien gesetzt, nein... Es wird im "Master" die Fußzeile gesetzt, damit sie danach auf allen Folien erscheint. Ganz leicht nachzuvollziehen:

    Starte die P mit F5 und drücke den Button. Beende die P dann und gehe ins Menü "Ansicht - Kopf- und Fußzeile...". Dort sollte neben dem gesetzten Häkchen bei "Fußzeile" auch der Text erscheinen, den das Makro eingesetzt hat.

    Was mir eben aufgefallen ist... Ich hatte die Fußzeile vorher nicht nur gelöscht, sondern auch alle Häkchen in dem Dialog deaktiviert. Prompt funktionierte es nicht, die Fußzeile per Makro zu setzen. Nachdem ich das Häkchen für "Fußzeile" gesetzt, das Textfeld aber leer gelassen hatte, ging es aber wieder anstandslos. Hmmm...

    Ich hatte ja versucht, das völlig automatisch und "unsichtbar" direkt beim Öffnen der P aufrufen zu lassen. Die fehlende Ereignis-Behandlung machte mir da aber einen Strich durch die Rechnung. Deswegen hatte ich als "Krücke" erstmal den Button mit eingebaut, weil der Weg über das Makro-Menü mir zu aufwändig war.

    Und wie der Button sich auf der Startseite einer Präsentation macht? Hmmm... Alles eine Frage der Beschriftung... Wenn Du die Beschriftung auf "Starte Präsentation" setzt und nicht nur die Fußzeile setzt, sondern gleich die nächste Seite aufrufst, dann sieht das doch gleich wieder gewollt und nicht nach Krücke aus. ;-)

    Außerdem könnte man den Button vielleicht auch transparent, aber quer über die komplette Seite setzen. Dann sieht man ihn nicht, aber beim Klick wird er trotzdem aktiviert.

    Hm? Versteh ich jetzt nicht...

    Gruß, Michael
     
    miriki, 31. Mai 2011
    #6
  7. kaiz0r User
    Ich meinte man muss dann über den Folienmaster natürlich eine Fusszeile definieren, sonst erkennt das Makro natürlich nicht wohin der Pfad gesetzt werden soll.

    Gibt es denn die Möglichkeit die Schriftart, -größe und vllt. dick/dünn zu unterscheiden? Edit: Ok das geht ja einfach über die Fußzeile im Folienmaster, das hat sich also erledigt^^

    Irgendwie ein Symbol für genau dieses Makro in die Toolleiste mit aufzunehmen geht wahrscheinlich nicht oder? Als alternativ für den Button in der P.
     
    kaiz0r, 6. Juni 2011
    #7
  8. kaiz0r User

    Dateipfad in Powerpoint 2003

    noch etwas anderes. Gibt es die Möglichkeit auch das Datum der Dateierstellung mit hinter den Dateipfad aufzunehmen? Also ich meine nicht die aktuelle Uhrzeit, sondern die der Dateianlegung. Gibt es da einen Befehl dafür?
     
    kaiz0r, 6. Juni 2011
    #8
  9. miriki Erfahrener User
    Wenn man schon mit VBA in Gange ist, kann man so ziemlich alles heranziehen, was als Information zur Verfügung gestellt wird.

    Was in jedem Fall geht: Aus dem Dateisystem kann man sich das eine oder andere Datum ziehen, als da wären:
    - Datei-Erstellung (erste Speicherung)
    - letzte Änderung (letzte Speicherung)
    - letzter Zugriff (letztes Öffnen)
    Ob außer dem mittleren auch die anderen Informationen im Dateisystem verfügbar sind, ist aber von Fall zu Fall (Betriebssystem) unterschiedlich. Außerdem verhagelt einem den "letzten Zugriff" meistens auch gerne so ziemlich jede Backup-Software, was einem das Finden von "Dateileichen" ziemlich erschwert.

    Wenn Du im Explorer auf einer P mal rechten Mausklick - Eigenschaften machst und dort ebendiese Datums-Informationen siehst, dann ist da schonmal einiges gewonnen.

    Außerdem könnte es sein, daß PowerPoint diese Informationen auch in der Präsentation selbst speichert. Dann wäre es über die internen Eigenschaften der P erreichbar. Aber da kann ich nichts Genaueres zu sagen, ohne mich vorher durch die Onlinehilfe von PP durchzuwühlen.

    Gruß, Michael
     
    miriki, 6. Juni 2011
    #9
  10. miriki Erfahrener User
    Das würde wohl nur gehen, wenn der entsprechende VBA-Code, der durch den Button aufgerufen werden soll, auch dauerhaft verfügbar ist. Dann sind wir wieder am Anfang: Eine Vorlage, die in jeder neuen P die Basis darstellt oder ein Add-In. Mit beidem kenne ich mich unter PP nicht aus.

    Bei Excel und Word weiß ich, daß es entsprechende "Startup"-Folder gibt, aus denen Dateien automatisch beim Starten geladen werden und entsprechenden VBA-Code, Icons usw. zur Verfügung stellen können. Auch ein Add-In ist da relativ simpel zu realisieren. Nur zu PP müßte jemand anderes was sagen...

    Gruß, Michael
     
    miriki, 6. Juni 2011
    #10
  11. kaiz0r User
    Also wenn ich hier meine Vorlage habe, so ist für die Vorlage der VBA-Code ja auch gespeichert. Das heißt wenn ich immer von der Vorlage ausgehe, ist der VBA-Code ja immer vorhanden und man müsste theoretisch einen Button erstellen können? Oder hab ich da jetzt einen Denkfehler. Ist das eine große Sache?

    Wichtiger wäre mir aber noch das mit dem Speicherdatum. Weiß leider nicht wie ich das implizier weil ich den Code nicht verstehe. Ich hatte das jetzt so probiert:

    Sub DateinameInFusszeile()

    With ActivePresentation

    If .HasTitleMaster Then

    .TitleMaster.HeadersFooters.Footer.Text = "" & .FullName
    .TitleMaster.HeadersFooters.Footer.Visible = msoTrue
    .TitleMaster.HeadersFooters.Footer.Text = "" & .FileDateTime
    .TitleMaster.HeadersFooters.Footer.Visible = msoTrue

    Else

    .SlideMaster.HeadersFooters.Footer.Text = "" & .FullName
    .SlideMaster.HeadersFooters.Footer.Visible = msoTrue
    .TitleMaster.HeadersFooters.Footer.Text = "" & .FileDateTime
    .TitleMaster.HeadersFooters.Footer.Visible = msoTrue

    End If

    End With

    End Sub


    Kannst du mir sagen wie das richtig aussehen muss? Soll dann beides in eine Zeile kommen, am besten mit einem Komma und Leerzeichen optisch getrennt.

    Unabhängig davon ob wir das jetzt noch schaffen, schonmal Danke, warst mir eine große Hilfe;)
     
    kaiz0r, 9. Juni 2011
    #11
  12. miriki Erfahrener User
    Ich hab da mal 'n Beispiel gebaut...

    Gruß, Michael
     
    miriki, 9. Juni 2011
    #12
  13. kaiz0r User

    Dateipfad in Powerpoint 2003

    Du hattest das mal so schön mit

    Private Sub CommandButton1_Click()

    DateinameInFusszeile

    End Sub


    und dem oben genannten Modul ( siehe code ) gemacht. So würde ich das gerne haben. Bei deiner Test-P wird einem auch schön das richtige Datum ausgespuckt, aber eben in einem aufploppendem Fenster. Das mit dem Button in der Präsentation, der dann die Daten aktualisiert, finde ich sehr gut. Könntest du mir das noch in das Modul mit reinschreiben, ich weiß leider nicht wies geht. Wenn ich den Code halbwegs richtig versteh, müsste in <Fu> ja dann neben bereits funktionierendem Speicherort auch das Datum angezeigt werden?

    Grüße,
    Kai
     
    kaiz0r, 9. Juni 2011
    #13
  14. miriki Erfahrener User
    Hmmm... Ich hatte Dir gestern schon darauf geantwortet, aber irgendwie scheint das Forum den Beitrag gefressen zu haben. ok, nochmal:

    Ich hab das ursprüngliche Beispiel nochmal etwas angepaßt. Vor allem: Den Button hab ich wieder rausgenommen.

    Dann bin ich in "Ansicht - Symbolleisten > Anpassen..." gegangen und hab in der linken Liste runter gescrollt, bis ich "Makros" anklicken konnte. Aus der rechten Liste hab ich dann "DateinameInFusszeile" in eine Symbolleiste oben unter dem Menü gezogen. Schwupps war da ein Button mit dem Makro-Namen.

    Den Button ausprobiert, läuft...

    Die P dicht gemacht und mit dem "leere Seite" Icon eine neue P erstellt, als Grundgerüst die ganz einfache Vorlage benutzt, die kein weiteres Layout hat. Die hab ich dann mal als C:\Test.ppt gespeichert.

    Der Button war immer noch in der Symbolleiste, also ausprobiert und... läuft!

    PP mal ganz dicht gemacht, neu geöffnet, leere P ohne Layout erstellt, Button ausprobiert... läuft!

    Also denke ich, daß sich das jetzt einer Lösung nähert, die Du gebrauchen kannst, oder?

    Gruß, Michael
     
    miriki, 10. Juni 2011
    #14
Thema:

Dateipfad in Powerpoint 2003

Die Seite wird geladen...
  1. Dateipfad in Powerpoint 2003 - Similar Threads - Dateipfad Powerpoint 2003

  2. Dateipfad ergibt d.docs.live

    in Microsoft Excel Hilfe
    Dateipfad ergibt d.docs.live: Hallo zusammen Ich habe in meinen VBA's in Excel's immer mit thisworkbooks.path gearbeitet um den Dateipfad aus zu lesen. Bei meinem Windows 10, 11 und Excel 365 funktioniert das wunderbar. Ich...
  3. Datei als PDF speichern ohne festen Dateipfad

    in Microsoft Excel Hilfe
    Datei als PDF speichern ohne festen Dateipfad: Hey ihr Profis da draußen, ich versuche aktuell mehrere Excel-Blätter über VBA automatisch als PDF-Datei erstellen zu lassen. Einen Teilerfolg konnte ich bereits erzielen, mehrere Blätter werden...
  4. Variabler Dateipfad bei Einlesen von csv-Datei

    in Microsoft Excel Hilfe
    Variabler Dateipfad bei Einlesen von csv-Datei: Hallo zusammen, ich habe einen Code mit dem Makro-Rekorder aufgenommen den ich gerne anpassen würde: Sub AddData() ActiveWorkbook.Queries.Add Name:="TWW", Formula:= _ "let" & Chr(13) & "" &...
  5. Dateipfad wird nicht gefunden

    in Microsoft Excel Hilfe
    Dateipfad wird nicht gefunden: Moin, ich bin schier am verzweifeln... Dieses Makro soll zunächst die geöffnete Arbeitsmappe definiert abspeichern, anschließend ganz bestimmte Zellen hieraus kopieren und in eine andere...
  6. Dateipfad per Drag & Drop

    in Microsoft Access Hilfe
    Dateipfad per Drag & Drop: Hallo, in meiner Access-Anwendung gibt es Projekte, denen ich in einer neuen Version gern Dateien zuordnen würde. (z.B. PDF-Angebote von einem Zulieferer, Baustellenbilder usw.). Der Pfad der...
  7. Per Drag n Drop Dateipfad und Dateiname ermitteln

    in Microsoft Access Hilfe
    Per Drag n Drop Dateipfad und Dateiname ermitteln: Hallo Forum User, ich probiere zur Zeit über eine ListBox oder ListView Element den Dateipfad sowie Dateinamen per Drag n Drop zu ermitteln. Allerdings finde ich Netz dazu so viel das mich...
  8. Dateipfad mit Platzhalter auslesen

    in Microsoft Access Hilfe
    Dateipfad mit Platzhalter auslesen: Hallo zusammen, seit 2 kompletten Tagen versuche ich nun via VBA einen Dateipfad mit "*" o. ä. auszulesen und bekomme es einfach nicht hin. *frown.gif* Meine Basis ist dabei Folgende: Ich habe...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden