Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1756to1760
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ursprüngliches Erstelldatum einer Pdf

Ursprüngliches Erstelldatum einer Pdf
11.05.2020 19:37:42
Alex
Hallo zusammen,
ich arbeite an einem Makro zum Auslesen des ursprünglichen Erstell- und Änderungsdatums mehrer pdf's.
Hierbei bin ich jedoch auf das selbe Problem wie Markus gestoßen: https:\/\/www.herber.de/forum/archiv/1604to1608/1607606_Erstelldatum_einer_PDF_auslesen.html
Mir war es möglch die Angaben, welche im Explorer angezeigt werden auszulesen jedoch nicht die Informationen im Klartext der Pdf, welche von denen im Explorer angezeigten Daten abweichen.
Chris hat damals eine Lösung präsentiert, die jedoch genau dies ermöglcht. Ich hab diese angepasst jedoch erhalte ich als Ausgabe in der MsgBox eine unleserlich codierte Zeile.
In der Betrachtung im Editor finde ich sowohl die "unleserlich codierte Zeile" als auch das Erstelldatum in dem angebegebenen Format. [/CreationDate (D:20170825123145+01'00')].
Ich habe nun schon einiges rumprobiert aber komme immer nur mit einem unleserlichen Resultat heraus.
Hat jemand eine Idee, was ich versuchen oder anpassen müsste?
Kann es sein, dass in der Pdf das Erstelldatum in verschiedener Textcodierung angegeben ist und Excel daher diese Zeichenfolge ausgibt?
Schoneinmal ein Dankeschön, falls du bishierher glesen hast :)
Viele Grüße
Alex

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ursprüngliches Erstelldatum einer Pdf
11.05.2020 19:52:48
onur
Und woher solen wir jetzt wissen, was genau du von den Vorschlägen übernommen hast?
Hast du die Zeile
buffer=DateSerial(Mid(buffer, 1, 4), Mid(buffer, 5, 2), Mid(buffer, 7, 2))
vergessen?
AW: Such-String
11.05.2020 19:52:52
Fennek
Hallo,
in einem kleinen Test mit einer PDF auf meinem PC konnte ich in der ersten Datei den Suchstring "CreationDate" nicht finden. In der zweiten Datei stand:

&ltxmp:ModifyDate&gt2017-10-23T13:12:16-06:00&lt/xmp:ModifyDate&gt
&ltxmp:CreateDate&gt2017-10-23T13:12:14-06:00&lt/xmp:CreateDate&gt
&ltxmp:MetadataDate&gt2017-10-23T13:12:16-06:00&lt/xmp:MetadataDate&gt
mfg
(hoffentlich hat die Umschreibung mit & l t &lt geklaptt)
Anzeige
AW: Ursprüngliches Erstelldatum einer Pdf
11.05.2020 19:56:23
Tino
Hallo,
ist dies nicht das Datum?
20170825123145+01'00'
25.08.2017 13:31:45
In der Winterzeit müsste dann +02 dabei stehen.
Gruß Tino
AW: Ursprüngliches Erstelldatum einer Pdf
11.05.2020 21:06:53
Alex
Danke für die schnellen Antworten!!
@onur. Hast natürlich Recht. Ich versuche es noch einmla etwas spezifischer.
Ich beziehe mich auf diesen Code.
Sub t() 'Code von Chris
Dim buffer As String
Dim ar As Variant
Dim i As Integer
Open "C:\MeinPfad.pdf" For Input As #1
Do While Not EOF(1)
Line Input #1, buffer
If buffer Like "*/CreationDate*" Then Exit Do 'Das Datum befindet sich so in meiner test
'pdf: /CreationDate (D:20200424102316+02'00')
Loop
Close #1
ar = Split(buffer, "/")
For i = LBound(ar) To UBound(ar)
If ar(i) Like "CreationDate*" Then
buffer = Left(ar(i), InStr(1, ar(i), ")"))
Exit For
End If
Next i
MsgBox buffer
End Sub

Bei der Verwendung der Funktion habe ich einen Typenfehler erhalten und unabhängig von der Formatierung wollte ich zunächst das Datum da stehen haben.
Ich habe es mit verschiedenen pdfs versucht und bin dabei, wie von Fennek schon angemerkt, auf eine andere Schreibweise gestoßen und hab diese auch berücksichtigt. Ich hab auch versucht einfach mal die nächsten 10 Zeichen neben dem Creation date auszugeben, oder den kompletten Inhalt in Excel zu lesen.
Am Ende kam jedoch immer die Rückmeldungin in der MsgBox oder zelle in einer derart codierten Weise: z¼7}üþf¨ÿB9á¡@pƁ.‚ñÕùáïpx_bB{` (so kodiert wird ja der Inhalt der pdf dargestellt aber nicht die Metadaten, daher meine Frage zu der MsgBox die eine solche Meldung bringt)
Danke nochmals für eure Rückmeldungen! Hoff ich konnte das Problem etwas klarer darstellen
Anzeige
AW: Ursprüngliches Erstelldatum einer Pdf
11.05.2020 21:09:08
onur
Dann füge doch mal "meinen" Code vor
MsgBox buffer 

hinzu.
AW: Ursprüngliches Erstelldatum einer Pdf
12.05.2020 18:09:33
Alex
"Dann füge doch mal "meinen" Code vor"
Ich meine ich habe deutlich gemacht, dass ich den Code von Chris verwedet habe. Änderungen, dass es jetzt in eine Zelle schreibt oder nicht oder sonstiges sind für das Problem welches ich versucht habe zu beschreiben nicht relevant.
Denn ursprügnglich habe ich versucht diesen Code auszuführen an meinen Dateipfad (wie oben gezeigt) angepasst, und nur zeigen wollen, dass ich verschieden Punkte versucht habe und nicht hier einfach eine fertige Lösung beim ersten Problem abstauben wollte.
Aber ich werde in Zukunft versuchen direkt eine Beispieldatei zu erzeugen, damit es auch besser möglich ist es nachzuvollziehen.
Ich hab das Problem nochmal betrachtet.
Die Schleife wird bei mir nur etwa 4mal durchlaufen. Dann hört sie mit der Zeile:" z¼7}üþf¨ÿB9á¡@pƁ.‚ñÕùáïpx_bB{`" auf. ohne überhaupt in die Nähe von CreateDate zu kommen.
Sprich sie bricht vorher ab und gibt so den letzten Wert gespeichert in buffer wieder.
Mir ist nicht klar warum Sie abbricht, da das Dokument ja bis %%EOF durchsucht werden sollte.
Ich geh jetzt mal davon aus, dass es Probleme mit der Textcodierung sind. (Ich hab die pdf mit Word erstellt und durch Microsoft print gespeichert).
[Falls mir jemand erkären kann wieso es abbricht, wär ich sehr dankbar - das lässt mich noch nicht ganz in Ruhe)
Jedenfalls öffne ich die Datei jetzt im Binärmodus und es auslesen klappt.
Nochmals danke für eure Rückmeldungen! Hat mich sehr gefreut!
Anzeige
AW: Ursprüngliches Erstelldatum einer Pdf
12.05.2020 18:23:49
onur
Und wieso machst du es nicht einfach wie das hier?

Dim FSO As Object
Dim Datei As Object
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Datei = FSO.GetFile("DeinePDF_Datei.pdf")
MsgBox Datei.DateCreated

AW: Ursprüngliches Erstelldatum einer Pdf
12.05.2020 19:58:18
Alex
So hab ich es am Anfang auch versucht. Jedoch kamen hier die Informationen aus dem Explorer heraus. Hier wird das Erstelldatum jedoch ständig geändert.
Wenn ich z.B eine pdf kopiere oder per Email gesendet bekomme, passt sich das Datum hier an.
Jedoch brauch ich das tatsächliche Erstelldatum. Wenn man z.B im Adobe Reader unter Datei und Eigenschaften geht findet man das Datum zu dem die pdf auch tatsächlich mal erstellt wurde.
und so bin ich irgendwann hier gelandet :D
Anzeige
AW: Ursprüngliches Erstelldatum einer Pdf
12.05.2020 20:58:51
onur
Dann halt so:
Sub tt()
Dim strSuch, strTxt, MyLoc
Dim pos, le, dat, zt, str, tim, DatNam
strSuch = "CreateDate>"
DatNam = "DeinePDF_InklusivePfad.pdf"
If Dir(DatNam)  "" Then
Open DatNam For Binary As #1
Do While MyLoc  0 Then
str = Mid(strTxt, pos + 11, 19)
str = Replace(str, "-", "/")
tim = Right(str, 8)
dat = Left(str, 10)
dat = DateValue(dat) + TimeValue(tim)
MsgBox dat
End If
MyLoc = Loc(1)
Loop
Close 1
End If
End Sub

212 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige