Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Datumsangabe in Excel-Fußzeile





Frage

Hallo an alle Excel-Kenner (und Könner), ich habe folgendes Problem: Ich soll unter Excel 2000 eine Vorlage (.xlt) erstellen, in der in der Fußzeile das Erstell-Datum der Datei (xls) (nicht das aktuelle Datum, das ist kein Problem) automatisch eingetragen wird. Im Word gibt es ein entsprechendes Feld "CreateDate", im Excel habe ich kein entsprechenden Pendant gefunden. Wie kann ich das Problem noch lösen? Vielleicht mit einem Makro? Ich habe jedoch keine Ahnung von Makro-Programmierung. Ich hoffe auf gute Ideen von euch. Vielen Dank websurfer

Antwort 1 von pistenschreck

Hallo websurfer

Unter DieseArbeitmappe

Private Sub Workbook_BeforePrint(Cancel As Boolean)
x = ActiveWorkbook.BuiltinDocumentProperties("Creation date")
With ActiveSheet.PageSetup
.RightFooter = x
End With
End Sub

Gruss Werner

Antwort 2 von pistenschreck

Hallo websurfer

Wenn das Datumformat anders werden soll, dann ...

Private Sub Workbook_BeforePrint(Cancel As Boolean)
x = ActiveWorkbook.BuiltinDocumentProperties("Creation date")
x = Format(x, "YY.MM.DD hh:mm")
With ActiveSheet.PageSetup
.RightFooter = x
End With
End Sub

Gruss Werner

Antwort 3 von websurfer

Hallo Werner,

danke für deine Bemühungen. Ich habe dein Makro in die Datei kopiert-leicht verändert:

Sub Datum()
x = ActiveWorkbook.BuiltinDocumentProperties("Creation date")
x = Format(x, "DD.MM.YYYY")
With ActiveSheet.PageSetup
.RightFooter = x
End With
End Sub

Leider gibt es noch folgende Probleme:

1. Das Makro muss manuell gestartet werden. Lässt sich das mit dem Start des ersten Ausdruckes oder dem Erstellen der Datei aus der xlt-Vorlage verknüpfen?

2. Das Makro überschreibt die in der Fußzeile rechts vorhandene Seitenangabe. Links (.LeftFooter = x) geht auch nicht, da steht Dateipfad/ -name, Mitte wäre möglich, doch (.MiddleFooter = x) funktioniert nicht. Wie muss es richtig heißen?

Vielen Dank für deine Hilfe

websurfer

Antwort 4 von websurfer

Hallo Werner,

Ergänzung zu oben:

3. Das Datum soll in alle vorhandenen Blätter der Excel-Datei eingetragen werden.

Danke

websurfer

Antwort 5 von Pistenschreck

Hallo websurfer

Also, ist das Workbook_BeforePrint richtig. Das wird automatisch auf jeder Tabelle angewannt . Ansonsten kann ja jeder das Datum überschreiben.

Dein Problem heisst CenterFooter

Und das ist der Code:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
x = ActiveWorkbook.BuiltinDocumentProperties("Creation date")
x = Format(x, "YY.MM.DD hh:mm")
ActiveSheet.PageSetup.CenterFooter = x
End Sub

Gruss Werner

Antwort 6 von websurfer

Hallo Werner,

ich stelle fest ich bin ein Makro-DAU, deshalb meine Fragen:

ich habe folgendes gemacht:

1. über Alt+F8 Makrofenster öffnen
2. Name für Makro angeben
3. <Erstellen> klicken, MS VisualBasic öffnet
4. obigen Text in Fenster kopieren (dabei die vorgegebene Zeile "Sub Name()" durch "Private Sub Workbook_BeforePrint(Cancel As Boolean)" ersetzen??
5. in MS VisualBasic xls-Datei speichern
6. erneuter Aufruf Makro über Alt+F8 --> Makro nicht da! (nach Eintippen von "workbook_beforeprint" kann Makro jedoch über <Bearbeiten> ausgewählt werden) ???
7. Datei trotzdem als Vorlage (xlt) gespeichert
8. neue Datei aus vorlage erstellt
9. neue Datei gedruckt --> kein Datum in Fußzeile
(10. Makro lässt sich aber auch nicht manuell starten, da über Alt+F8 nicht aufrufbar!)

was mach ich als DAU falsch??

Danke

websurfer

Antwort 7 von Pistenschreck

Hallo websurfer

Unter DieseArbeitmappe

Was hast Du für ein Excel. Normal ruft man mit ALT+F11 das VBA-Projekt auf.

[img]http://www.uploadagent.de/files/1165489495/thumb_VBA.JPG[/img]

Und hier gehört mein Code hin.

Gruss Werner

Antwort 8 von websurfer

Hallo Werner,

bei mir sieht das irgendwie anders aus, ich habe ein paar Screenshots gemacht. Zum ersten gelangte ich über Alt-F8

[img]http://i3.photobucket.com/albums/y55/u674525/Excel/01.jpg[/img]
[img]http://i3.photobucket.com/albums/y55/u674525/Excel/02.jpg[/img]
[img]http://i3.photobucket.com/albums/y55/u674525/Excel/03.jpg[/img]
[img]http://i3.photobucket.com/albums/y55/u674525/Excel/04.jpg[/img]
[img]http://i3.photobucket.com/albums/y55/u674525/Excel/05.jpg[/img]
[img]http://i3.photobucket.com/albums/y55/u674525/Excel/06.jpg[/img]
[img]http://i3.photobucket.com/albums/y55/u674525/Excel/07.jpg[/img]

Ich hoffe die screenshots helfen bei der Fehlersuche

Danke

Jens

Antwort 9 von Pistenschreck

Hallo Jens

Hatte ein lange Leitung mit ALT+F8. Das ist Extras - Makro, aber da geht es nicht.

Drücke ALT+F11
Jetzt bist Du im VBA-Projekt Deiner Mappe.
Doppelklick auf DieseArbeitsmappe im linken obern Fenster.
Im rechten Fenster den ganzen Code hinein kopieren.

Private Sub Workbook_BeforePrint(Cancel As Boolean)
x = ActiveWorkbook.BuiltinDocumentProperties("Creation date")
x = Format(x, "YY.MM.DD hh:mm")
ActiveSheet.PageSetup.CenterFooter = x
End Sub

Gruss Werner

Antwort 10 von Pistenschreck

Hallo Jens

Hier mal eine Bsp-Datei. Diese Datei liegt aber nur 100 Tage auf den Server.

http://www.uploadagent.de/files/1165493310/JENS.xls

Gruss Werner

Antwort 11 von websurfer

Hallo Werner,

ich glaube wir kommen dem Ziel langsam näher.

Funktioniert (fast) perfekt - Danke!!

Das Datum wird jedoch nur auf dem ersten Blatt eingefügt, in den restlichen nicht (auch bei deinem Beispiel nicht). Vielleicht noch eine Idee dazu?

Danke

Jens

Antwort 12 von websurfer

Hallo Werner,

korrigiere:

Funktioniert prima, wenn ich jedes Blatt einzeln drucke. Wähle ich im Druckdialog jedoch "gesamte Arbeitsmappe", wird das Datum nur im ersten Blatt eingefügt.

Jens

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: