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

Erstellungsdatum per VBA

Forumthread: Erstellungsdatum per VBA

Erstellungsdatum per VBA
Sven
Hallo zusammen,
ich hoffe Ihr seid wohl auf ;)
Mal wieder meine Anlaufstelle für ein kleines Problem.
Ich möchte per VBA in die letzte Zeile einer Datei (erste leere Zelle) das Erstellungsdatum (oder Änderungsdatum) der Tabelle einfügen lassen.
Private Sub Workbook_Open()
If IsEmpty(Sheets("test").Range("A13")) Then
Sheets("test").Range("A13").Value = Date
End If
End Sub
Doch wo liegt mein Denkfehler ?
Vielen Dank für eure kurze Hilfe.
Grüße
Sven
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
BuiltinDocumentProperties("Creation Date")
15.12.2010 16:15:13
NoNet
Hallo Sven,
DATE gibt immer das AKTUELLE Datum aus (PC-Systemzeit).
Um das Erstellungs-/Letzte Änderungsdatum einer Datei zu ermitteln, musst Du deren EIGENSCHAFTEN (engl.: Properties) auslesen :

Sheets("test").Range("A13").Value=Activeworkbook.BuiltinDocumentProperties("Creation date")
Sheets("test").Range("A13").Value=Activeworkbook.BuiltinDocumentProperties("Last Save Time")
Gruß, NoNet
Anzeige
AW: BuiltinDocumentProperties("Creation Date")
15.12.2010 16:34:40
Sven
Danke NoNet :) werde das mal ausprobieren.
Grüße
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Erstellungsdatum per VBA in Excel einfügen


Schritt-für-Schritt-Anleitung

Um das Erstellungsdatum oder das letzte Änderungsdatum einer Excel-Datei per VBA in die letzte leere Zelle einer bestimmten Tabelle einzufügen, folge diesen Schritten:

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

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden VBA-Code ein:

    Private Sub Workbook_Open()
       If IsEmpty(Sheets("test").Range("A13")) Then
           Sheets("test").Range("A13").Value = ActiveWorkbook.BuiltinDocumentProperties("Creation Date")
       End If
    End Sub
  4. Schließe den VBA-Editor und speichere die Datei als Makro-fähige Arbeitsmappe (*.xlsm).

  5. Schließe und öffne die Arbeitsmappe erneut, um den Code auszuführen.


Häufige Fehler und Lösungen

  • Fehler: Das Erstellungsdatum wird nicht angezeigt.

    • Lösung: Stelle sicher, dass der Code im richtigen Modul eingefügt wurde. Überprüfe auch, ob die Tabelle "test" existiert.
  • Fehler: Der Code gibt einen Laufzeitfehler aus.

    • Lösung: Überprüfe die Schreibweise der Eigenschaften. Es sollte BuiltInDocumentProperties("Creation Date") und nicht BuiltinDocumentProperties("Creation date") sein.

Alternative Methoden

Anstatt VBA zu verwenden, kannst du auch das Erstellungsdatum manuell abrufen:

  1. Klicke in Excel auf Datei und dann auf Informationen.
  2. Unter Eigenschaften findest du das Erstellungsdatum (oder "Creation Date" auf Englisch).

Diese Methode ist jedoch weniger automatisiert als die Verwendung von VBA.


Praktische Beispiele

Hier sind einige Beispiele, wie du den VBA-Code anpassen kannst:

  • Um das letzte Änderungsdatum in die Zelle A14 einzufügen:

    If IsEmpty(Sheets("test").Range("A14")) Then
       Sheets("test").Range("A14").Value = ActiveWorkbook.BuiltinDocumentProperties("Last Save Time")
    End If
  • Um das Erstellungsdatum in die erste leere Zelle in Spalte A zu speichern:

    Dim LastRow As Long
    LastRow = Sheets("test").Cells(Rows.Count, 1).End(xlUp).Row + 1
    Sheets("test").Cells(LastRow, 1).Value = ActiveWorkbook.BuiltinDocumentProperties("Creation Date")

Tipps für Profis

  • Nutze Variablen, um den Code übersichtlicher zu gestalten. Zum Beispiel:

    Dim CreationDate As Variant
    CreationDate = ActiveWorkbook.BuiltinDocumentProperties("Creation Date")
    Sheets("test").Range("A13").Value = CreationDate
  • Verwende Option Explicit am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert werden.


FAQ: Häufige Fragen

1. Wie kann ich das Datum in einem anderen Format anzeigen? Du kannst das Datum formatieren, indem du die NumberFormat-Eigenschaft verwendest:

Sheets("test").Range("A13").NumberFormat = "DD.MM.YYYY"

2. Funktioniert dieser VBA-Code in allen Excel-Versionen? Ja, dieser Code sollte in den meisten Excel-Versionen funktionieren, die VBA unterstützen, einschließlich Excel 2010 und neuer.

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