Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Dateiname und Änderungsdatum auslesen

Dateiname und Änderungsdatum auslesen
07.02.2023 12:59:21
David
Hallo,
ich suche einen Code mit dem ich aus einem beliebigen Ordner den Dateinamen und das Änderungsdatum auslesen kann und dann in einem zweiten Schritt diese Dateien umbenennen kann.
z.B.
Originalname
Meine Datei.jpg
Neuer Name:
[Änderungsdatum] Meine Datei.jpg
Kann mir da jemand helfen?
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateiname und Änderungsdatum auslesen
07.02.2023 13:14:55
ChrisL
Hi David
ChatGPT (Link im Titel) hat die Arbeit erledigt:
Excel VBA erstelle eine Excel Tabelle mit allen Dateien von einem bestimmten Ordner und dem letzten Änderungsdatum
Sie können die Dateien in einem bestimmten Ordner mithilfe von VBA und den Funktionen von Windows einlesen. Hier ist ein Beispielcode, um alle Dateien in einem bestimmten Ordner und das jeweilige Datum ihrer letzten Änderung in einer Excel-Tabelle aufzulisten:
Sub ListFilesInFolder()
  Dim MyPath As String, MyFile As String, MySheet As Worksheet
  Dim R As Long
  'Define the path to the folder
  MyPath = "C:\MyFolder"
  'Set the worksheet you want to write the file list to
  Set MySheet = ThisWorkbook.Sheets("Sheet1")
  'Clear the worksheet
  MySheet.Cells.Clear
  'Add headers for the file name and last modified date
  MySheet.Cells(1, 1).Value = "File Name"
  MySheet.Cells(1, 2).Value = "Last Modified"
  'Start at the second row of the worksheet
  R = 2
  'Get a list of all the files in the folder
  MyFile = Dir(MyPath & "\*.*")
  Do While MyFile > ""
    'Write the file name and last modified date to the worksheet
    MySheet.Cells(R, 1).Value = MyFile
    MySheet.Cells(R, 2).Value = FileDateTime(MyPath & "\" & MyFile)
    'Move to the next row in the worksheet
    R = R + 1
    'Get the next file in the folder
    MyFile = Dir
  Loop
End Sub
Stellen Sie sicher, dass Sie den Pfad in Zeile 9 an Ihre Bedürfnisse anpassen. Führen Sie dann den Code aus, indem Sie ihn in der Visual Basic-Umgebung ausführen oder indem Sie die Tastenkombination ALT + F8 drücken.
cu
Chris
Anzeige
AW: Dateiname und Änderungsdatum auslesen
07.02.2023 13:47:03
David
Danke für den Code, der funktioniert.
Leider fehlt am Schluss das umbenennen der Dateien. Dieser Code liest es nur aus...
AW: Dateiname und Änderungsdatum auslesen
07.02.2023 14:07:11
ChrisL
Hi
Ich mache mal ausnahmsweise den Roboter, der den Roboter füttert...
Name und Datum müsstest du noch tauschen.
excel vba ändere alle dateinamen eines bestimmten ordners. füge das letzte änderungsdatum zum aktuellen dateinamen hinzu
Hier ist ein einfaches VBA-Skript, das alle Dateinamen in einem bestimmten Ordner ändert und das letzte änderungsdatum zum aktuellen Dateinamen hinzufügt:
Sub ChangeFileNamesWithModifiedDate()
Dim fso As Object
Dim folder As Object
Dim file As Object
Dim newName As String
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder("C:\Your\Folder\Path")
For Each file In folder.Files
    newName = file.Name & "_" & Format(file.DateLastModified, "yyyy-mm-dd") & "." & fso.GetExtensionName(file.Name)
    file.Name = newName
Next file
End Sub
Stelle sicher, dass Sie den Pfad zum gewünschten Ordner in der Zeile Set folder = fso.GetFolder("C:\Your\Folder\Path") ändern.
cu
Chris
Anzeige
AW: Dateiname und Änderungsdatum auslesen
07.02.2023 14:16:14
David
SUPER PERFEKT Vielen lieben Dank

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Dateinamen und Änderungsdatum in Excel auslesen


Schritt-für-Schritt-Anleitung

Um Dateinamen aus einem Ordner auszulesen und das Änderungsdatum in Excel anzuzeigen, kannst du den folgenden VBA-Code verwenden. Dieser Code listet alle Dateien eines bestimmten Ordners auf und zeigt das jeweilige Datum der letzten Änderung an.

  1. Öffne Excel und drücke ALT + F11, um die Visual Basic-Umgebung zu öffnen.

  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden Code und füge ihn in das Modul ein:

    Sub ListFilesInFolder()
     Dim MyPath As String, MyFile As String, MySheet As Worksheet
     Dim R As Long
     'Define the path to the folder
     MyPath = "C:\MyFolder" ' Passe den Pfad an
     'Set the worksheet you want to write the file list to
     Set MySheet = ThisWorkbook.Sheets("Sheet1")
     'Clear the worksheet
     MySheet.Cells.Clear
     'Add headers for the file name and last modified date
     MySheet.Cells(1, 1).Value = "File Name"
     MySheet.Cells(1, 2).Value = "Last Modified"
     'Start at the second row of the worksheet
     R = 2
     'Get a list of all the files in the folder
     MyFile = Dir(MyPath & "\*.*")
     Do While MyFile <> ""
       'Write the file name and last modified date to the worksheet
       MySheet.Cells(R, 1).Value = MyFile
       MySheet.Cells(R, 2).Value = FileDateTime(MyPath & "\" & MyFile)
       'Move to the next row in the worksheet
       R = R + 1
       'Get the next file in the folder
       MyFile = Dir
     Loop
    End Sub
  4. Ändere den Pfad in Zeile 9 zu dem Ordner, den du auslesen möchtest.

  5. Führe den Code aus, indem du F5 drückst oder zurück zu Excel gehst und ALT + F8 drückst, um das Makro auszuführen.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 76" (Pfad nicht gefunden)
    Lösung: Überprüfe den angegebenen Pfad in Zeile 9. Stelle sicher, dass der Ordner existiert und der Pfad korrekt eingegeben wurde.

  • Fehler: "Laufzeitfehler 9" (Index außerhalb des Bereichs)
    Lösung: Stelle sicher, dass das Arbeitsblatt "Sheet1" existiert oder ändere den Namen im Code entsprechend deinem Arbeitsblatt.


Alternative Methoden

Wenn du Dateinamen aus einem Ordner auslesen möchtest, ohne VBA zu verwenden, kannst du auch Power Query nutzen. Hier ist eine kurze Anleitung:

  1. Gehe zu Daten > Daten abrufen > Aus Datei > Aus Ordner.
  2. Wähle den gewünschten Ordner aus.
  3. Power Query zeigt dir eine Vorschau der Dateien an. Du kannst die Spalten nach Bedarf anpassen und die Daten in Excel laden.

Praktische Beispiele

Ein Beispiel für das Umbenennen von Dateien mit dem Änderungsdatum könnte folgendermaßen aussehen:

  1. Verwende den folgenden VBA-Code, um die Dateinamen zu ändern:

    Sub ChangeFileNamesWithModifiedDate()
     Dim fso As Object
     Dim folder As Object
     Dim file As Object
     Dim newName As String
     Set fso = CreateObject("Scripting.FileSystemObject")
     Set folder = fso.GetFolder("C:\Your\Folder\Path") ' Passe den Pfad an
     For Each file In folder.Files
         newName = file.Name & "_" & Format(file.DateLastModified, "yyyy-mm-dd") & "." & fso.GetExtensionName(file.Name)
         file.Name = newName
     Next file
    End Sub
  2. Ändere den Pfad in Zeile 5 zu dem gewünschten Ordner und führe das Skript aus.


Tipps für Profis

  • Achte darauf, dass du die notwendigen Berechtigungen für den Zugriff auf die Dateien im angegebenen Ordner hast.
  • Teste deine VBA-Skripte immer zuerst mit einer kleinen Anzahl von Dateien, um unerwünschte Änderungen zu vermeiden.
  • Nutze Kommentare im Code, um den Überblick über die Funktionalität zu behalten.

FAQ: Häufige Fragen

1. Wie kann ich das Datum der letzten Änderung in einer Excel-Zelle anzeigen?
Du kannst den VBA-Code verwenden, um das Änderungsdatum zusammen mit dem Dateinamen in einer Excel-Tabelle anzuzeigen.

2. Ist es möglich, Dateinamen aus einem Ordner ohne VBA auszulesen?
Ja, du kannst Power Query verwenden, um Dateinamen aus einem Ordner auszulesen, ohne VBA zu nutzen. Gehe dazu zu Daten > Daten abrufen und wähle Aus Ordner.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige