Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datum Letzte Änderung auslesen

Datum Letzte Änderung auslesen
05.02.2021 16:51:11
Ulrich
Hallo Zusammen,
ich habe folgende Frage.
Ich liste mit einem Makro in einem Inhaltsverzeichnis Dateien auf.
Alle Dateien aus dem Ordner oder Unterordner die mit GB_ oder mit BG_ anfangen.
Die Dateinamen werden mit Verlinkung in die Tabelle übernommen.
Ist es möglich auch das Datum der letzten Änderung auszulesen und in die Spalte daneben zu übertragen?
Es könnten Word und Exceldateien sein.
Vielen Dank für eure Hilfe.
Gruß Ulli
https://www.herber.de/bbs/user/143649.xlsm
Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum Letzte Änderung auslesen
05.02.2021 19:00:45
Ulrich
Hallo Ralf,
danke für den guten Hinweis, dieses jetzt in meinen Code zu integrieren überfordert mich leider mit meinen bescheidenen VBA Kenntnissen.
Gruß Ulli
Anzeige
AW: Datum Letzte Änderung auslesen
05.02.2021 21:14:34
ralf_b

Dim oFile
'weiter unten einfügen
For ialngIndex = 1 To lngFileCount
Call Tabelle1.Hyperlinks.Add(Anchor:=Tabelle1.Cells(ialngIndex + 19, lngColumn), _
Address:=.Files(ialngIndex).Path, TextToDisplay:=.Files(ialngIndex).Filename)
Tabelle1.Cells(ialngIndex + 19, 1) = ialngIndex
Set oFile = CreateObject("Scripting.Filesystemobject").getFile(.Files(ialngIndex).Path)
Tabelle1.Cells(ialngIndex + 19, 3) = oFile.DateLastModified
Next

Anzeige
AW: Datum Letzte Änderung auslesen
06.02.2021 10:02:21
Ulrich
Hallo Ralf,
ganz herzlichen Dank für deine Mühen.
Viele Grüße Ulli
AW: Datum Letzte Änderung auslesen
06.02.2021 05:34:38
Nepumuk
Hallo Ulli,
so:
For ialngIndex = 1 To lngFileCount
    Call Tabelle1.Hyperlinks.Add(Anchor:=Tabelle1.Cells(ialngIndex + 19, lngColumn), _
        Address:=.Files(ialngIndex).Path, TextToDisplay:=.Files(ialngIndex).Filename)
    Tabelle1.Cells(ialngIndex + 19, 1) = ialngIndex
    Tabelle1.Cells(ialngIndex + 19, 3) = .Files(ialngIndex).LastModify
Next

Gruß
Nepumuk
Anzeige
AW: Datum Letzte Änderung auslesen
06.02.2021 09:43:48
Ulrich
Hallo Nepumuk,
danke, soweit funktioniert der code.
Aber die Zuordnung ist irgendwie durcheinander.
Das Datum in Z20/S3 gehört zur Datei Z20S4, aber dort müsste ja das Datum der Datei aus Z20S2 stehen.
Das Datum der Datei Z20S4 müsste in Z20S5 stehen.
Bei der nächsten Zeile ist es genau so.
Danke vorab für deine Hilfe
Gruß Ulli
Userbild
Anzeige
AW: Datum Letzte Änderung auslesen
06.02.2021 09:52:04
Nepumuk
Hallo Ulli,
dann so:
With objFileSearch
    .CaseSenstiv = False
    .Extension = "*.*"
    .FolderPath = strFolder
    .SubFolders = True
    For lngColumn = 2 To 4 Step 2
        .NewSearch = True
        .SearchLike = Switch(lngColumn = 2, "GB", lngColumn = 4, "BG") & "*"
        lngFileCount = .Execute(Sort_by_Name, Sort_Order_Ascending)
        For ialngIndex = 1 To lngFileCount
            Call Tabelle1.Hyperlinks.Add(Anchor:=Tabelle1.Cells(ialngIndex + 19, lngColumn), _
                Address:=.Files(ialngIndex).Path, TextToDisplay:=.Files(ialngIndex).Filename)
            Tabelle1.Cells(ialngIndex + 19, 1) = ialngIndex
            Tabelle1.Cells(ialngIndex + 19, lngColumn + 1) = .Files(ialngIndex).LastModify
        Next
    Next
End With

Gruß
Nepumuk
Anzeige
AW: Datum Letzte Änderung auslesen
06.02.2021 09:59:32
Ulrich
Hallo Nepumuk,
ganz grosse Klasse läuft!!
Vielen, vielen Dank!
Gruß Ulli
AW: Datum Letzte Änderung auslesen
06.02.2021 11:05:25
Ulrich
Hallo Nepumuk,
könntest du noch einmal kurz schauen, wenn ich das Arbeitsblatt Kopiere und auf dem zweiten Arbeitsblatt andere Dateien auflisten möchte, kommt ein Kompilierungsfehler:
Mehrdeutiger Name: Sort_By
https://www.herber.de/bbs/user/143660.xlsm
Gruß Ulli
Anzeige
AW: Datum Letzte Änderung auslesen
06.02.2021 11:13:16
Nepumuk
Hallo Ulli,
du musst im zweiten Modul die Enumerationen und den Datentyp löschen.
'Public Enum SORT_BY
' Sort_by_None
' Sort_by_Name
' Sort_by_Path
' Sort_by_Size
' Sort_by_Last_Access
' Sort_by_Last_Modyfy
' Sort_by_Date_Create
'End Enum
'
'Public Enum SORT_ORDER
' Sort_Order_Ascending
' Sort_Order_Descending
'End Enum
'
'Public Type FILEINFO
' Filename As String
' Path As String
' Size As Long
' LastAccess As Date
' LastModify As Date
' DateCreate As Date
'End Type

Gruß
Nepumuk
Anzeige
AW: Datum Letzte Änderung auslesen
06.02.2021 11:32:27
Ulrich
Hallo Nepumuk,
danke, funktioniert!!
Gruß Ulli
AW: Datum Letzte Änderung auslesen
05.02.2021 17:11:59
Hajo_Zi
Hallo Uli,
mal ein kompletter Code
http://hajo-excel.de/gepackt/vba2007/ordner_auslesen_hyperlink2007.zip
Falls Link nicht ausgeführt wird:
1. Link kopieren
2. rechte Maustaste neues Fenter.
3. Umschaltstaste drücken und Klick auf den Link
4. STRG+ Link mit Maus aktivieren

Anzeige
AW: Datum Letzte Änderung auslesen
05.02.2021 18:21:55
Ulrich
Hallo Hajo,
Vielen Dank.
dies ist ein wirklich guter Code, aber diese Funktion in meinen Code zu integrieren, d.h. den selektierten Dateien das "Datum der Änderung" in die Spalte daneben zu schreiben überfordert mich mit meinen bescheidenen VBA Kenntnissen.
Auch ist es nicht wirklich erforderlich das sich ein Fenster mit den Auswahlmöglichkeiten öffnet, so kompliziert brauche ich es nicht.
Trotzdem Danke für deine Hilfe.
Gruß Ulli
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Datum der letzten Änderung in Excel auslesen


Schritt-für-Schritt-Anleitung

Um das Datum der letzten Änderung einer Datei in Excel auszulesen, gibt es verschiedene Ansätze. Hier ist eine einfache Schritt-für-Schritt-Anleitung, die Du mit Excel und VBA umsetzen kannst:

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

  2. Füge ein neues Modul hinzu: Klicke auf Einfügen > Modul.

  3. Kopiere den folgenden VBA-Code in das Modul:

    Dim oFile
    Dim lngFileCount As Long
    Dim ialngIndex As Long
    Dim lngColumn As Long
    
    ' Hier wird der Pfad zu Deinem Ordner definiert
    Dim strFolder As String
    strFolder = "C:\Dein\Ordner\Pfad\"  ' Passe den Pfad an
    
    ' Beispiel für den Code zur Dateiauslesung
    For ialngIndex = 1 To lngFileCount
        Call Tabelle1.Hyperlinks.Add(Anchor:=Tabelle1.Cells(ialngIndex + 19, lngColumn), _
        Address:=.Files(ialngIndex).Path, TextToDisplay:=.Files(ialngIndex).Filename)
    
        Set oFile = CreateObject("Scripting.Filesystemobject").getFile(.Files(ialngIndex).Path)
        Tabelle1.Cells(ialngIndex + 19, 3) = oFile.DateLastModified  ' Datum der letzten Änderung
    Next
  4. Passe den Pfad zu Deinem Ordner an, in dem sich die Dateien befinden.

  5. Führe den Code aus: Gehe zu Run > Run Sub/UserForm oder drücke F5.


Häufige Fehler und Lösungen

  • Fehler: Kompilierungsfehler
    Wenn Du einen Kompilierungsfehler erhältst, achte darauf, dass alle Variablen korrekt deklariert sind und dass Du die richtigen Bibliotheken aktiviert hast.

  • Fehler: Datum wird nicht angezeigt
    Stelle sicher, dass die Zelle, in die das Datum geschrieben wird, im Datumsformat formatiert ist.

  • Fehler: Ungültiger Ordnerpfad
    Prüfe, ob der angegebene Ordnerpfad korrekt ist und ob Du die entsprechenden Zugriffsrechte hast.


Alternative Methoden

Es gibt auch Möglichkeiten, das Datum der letzten Änderung ohne VBA auszulesen:

  1. Excel-Fußzeile für das Datum: Du kannst in die Fußzeile Deiner Excel-Datei das aktuelle Datum einfügen, indem Du auf Einfügen > Fußzeile gehst und dort das Datum einfügst.

  2. Excel-Formel: Eine direkte Formel zum Auslesen des Änderungsdatums ist nicht verfügbar, aber Du kannst das letzte Speicherdatum in einer Zelle anzeigen, indem Du =JETZT() verwendest, um das aktuelle Datum und die Uhrzeit zu erfassen.


Praktische Beispiele

Hier sind einige praktische Beispiele zur Anzeige des Datums der letzten Änderung:

  1. Letzte Änderung in einer Zelle anzeigen:

    Tabelle1.Cells(1, 1) = "Datum der letzten Änderung: " & oFile.DateLastModified
  2. Excel letzte Bearbeitung anzeigen: Du kannst das Datum der letzten Speicherung in einer Zelle mit dem folgenden Befehl anzeigen:

    Tabelle1.Cells(2, 1) = "Letzte Speicherung: " & ThisWorkbook.BuiltinDocumentProperties("Last Author").Value

Tipps für Profis

  • Verwende die FileSystemObject-Bibliothek: Diese ist sehr hilfreich, um Dateieigenschaften wie das Änderungsdatum auszulesen.
  • Automatisiere den Prozess: Du kannst diese Skripte in regelmäßigen Abständen ausführen lassen, um die neuesten Änderungen automatisch zu überwachen.
  • Datenbankverknüpfungen: Wenn Du regelmäßig auf dieselben Dateien zugreifen möchtest, erwäge, eine Datenbankverknüpfung zu erstellen, um das Abrufen von Informationen zu erleichtern.

FAQ: Häufige Fragen

1. Wie kann ich das Datum der letzten Änderung ohne VBA in Excel anzeigen?
Du kannst das Datum der letzten Speicherung in der Fußzeile oder mithilfe des Befehls =JETZT() in einer Zelle darstellen. Eine spezifische Formel für das Änderungsdatum gibt es jedoch nicht.

2. Kann ich das Datum der letzten Änderung für mehrere Dateien gleichzeitig abrufen?
Ja, Du kannst den VBA-Code so anpassen, dass er durch alle gewünschten Dateien in einem Ordner iteriert und die Daten in einer Excel-Tabelle anzeigt.

3. Ist es möglich, das Datum der letzten Änderung in einer bestimmten Zelle anzuzeigen?
Ja, indem Du die Zelle im VBA-Code spezifizierst, in die das Datum geschrieben werden soll, kannst Du das Datum der letzten Änderung in jeder gewünschten Zelle anzeigen lassen.

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