Bug des Monats 05.02.2021, 07:30 Uhr

Excel und das ewige Erstelldatum «05.06.2015, 20:19 Uhr»

Vielleicht entdecken Sie in einigen Ihrer Excel-Arbeitsmappen ebenfalls das Erstelldatum «05.06.2015, 20:19 Uhr», obwohl die Datei laut Ihrem Wissen viel neuer ist. Dieser «Bug» liegt an einem merkwürdigen Zusammenspiel zwischen Excel, Windows und Ihnen.
Nein, unsere Datei ist nicht über fünf Jahre alt. Wieso steht dann trotzdem dieses alte Datum drin?
(Quelle: PCtipp.ch)
Die Autorin wunderte sich kürzlich wieder einmal sehr über Excel. Eine gerade erst am gleichen Tag erstellte Excel-Arbeitsmappe zeigte unter Datei/Informationen bei «Relevante Datumsangaben» hinter «Erstellt» den Datum- und Zeitstempel des 05.06.2015, 20:19. Auch eine weitere selbst erstellte Datei wies dasselbe Datum auf. Zahlreiche (aber nicht alle) Excel-Files, die sie daraufhin geprüft hat, zeigten dieses Datum.
Schaut man sich diese Dateien im Windows-Explorer an, sieht die Sache anders aus. Ein Rechtsklick auf eine der betroffenen Dateien, gefolgt von Eigenschaften zeigt im Reiter Allgemein das erwartete Datum, nämlich jenes von heute, wenn die Datei heute erstellt wurde. Ein Wechsel zum Reiter Details wiederum zeigt wieder das Datum vom Juni 2015.
Die Dateieigenschaften laut Windows zeigen, dass die Datei neu ist, die Meta-Daten von Excel (Reiter Details) zeigen das alte Datum
Quelle: PCtipp.ch

«Rechtsklick/Neu» ist schuld!

Allmählich dämmerte es der stutzig gewordenen Schreiberin. Sie fühlte sich an eine Geschichte mit Word erinnert, bei denen ebenfalls mittels Rechtsklick/Neu erstellte Dateien im Spiel waren. Es verhält sich so: Wenn Sie im Windows-Explorer via Rechtsklick/Neu/Microsoft Excel-Arbeitsblatt eine leere Excel-Datei erstellen, greift Excel bzw. Windows zu einer Vorlagendatei, die offenbar 2015 entstanden ist. Wollen Sie in der Excel-Datei hingegen von Anfang an das richtige Erstelldatum haben, dürfen Sie zum Erzeugen der Datei nicht die Rechtsklick/Neu-Methode verwenden. Stattdessen starten Sie Excel mit einer leeren Arbeitsmappe, fügen Inhalte ein und speichern die Datei.
Meistens achtet man sich überhaupt nicht aufs Datum, das Excel fürs Erstelldatum hält. Schliesslich ist meistens das letzte Speicherdatum relevant, das man vielleicht in eine Zelle oder in die Fusszeile packt. Oder man braucht das Datum für eine Suche im Windows-Explorer; und der schaut sowieso nur das richtige Erstelldatum an, nämlich sein eigenes. Aus kosmetischen Gründen oder um Verwirrungen zu vermeiden kann es dennoch hilfreich sein, das Datum an die Realität anzupassen.
Auf der nächsten Seite erfahren Sie, wie das geht.



Kommentare

Avatar
rojowa
05.02.2021
Besten Dank für diesen hervorragenden Tipp!

Avatar
karnickel
06.02.2021
Zum Teil des Artikels mit dem "bestimmten Datum" hätte ich eine Verbesserung einzubringen, die einem den Umweg über den Float-Timestamp erspart: [CODE]ThisWorkbook.BuiltinDocumentProperties("Creation Date") = DateValue("26.11.1985") + TimeValue("01:25:33")[/CODE] Ausserdem fehlt am Anfang ein wichtiger Schritt, über den man stolpern kann. Beim Erzeugen der Datei mit dem Explorer und "Neu" - "Microsoft Excel Arbeitsblatt" muss man dieses erst öffnen und mit "Datei" - "Speichern unter..." gleich nochmals im Format "Excel Arbeitsmappe mit Makros ( *.xlsm)" ablegen. Von den zwei Dateien braucht man dann die erste gar nicht mehr. Will man die mit dem Erstelldatum behandelte Mappe danach auch wieder ohne Makros (VBA) verwenden, empfiehlt sich die Wiederholung der Replikation als Format "Excel Arbeitsmappe ( *.xlsx)". Ganz schön viel Klimbim für ein Datum, dass sich im Backstage wohl niemand gross anschauen wird. :unsure:

Avatar
Gaby Salvisberg
08.02.2021
Hallo karnickel Warum als *.xlsm speichern? Das Makro, um das Datum zu ändern, muss ja eben nicht in der Datei gespeichert, sondern bloss einmal ausgeführt werden :cool:. Es steht ja auch im Artikel. Kurzfassung: Ganz normale .xlsx-Datei öffnen, VBA-Editor öffnen, Makrocode reinwerfen, jetzt einmal via Play-Taste ausführen, Makrocode wieder löschen. Kein Speichern als *.xlsm nötig! Man kann z.B. die im Artikel zuletzt gezeigte Variante in die persönliche Makro-Arbeitsmappe stecken. Das wäre diese da: [CODE]Sub ErstellDatumAnpassen() Dim fso As Object Dim datei As Object Set fso = CreateObject("Scripting.FileSystemObject") Set datei = fso.GetFile(ActiveWorkbook.FullName) ActiveWorkbook.BuiltinDocumentProperties("Creation Date") = datei.DateCreated Set datei = Nothing Set fso = Nothing End Sub[/CODE] Fertig! Herzliche Grüsse Gaby