HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Entdecke rund 2 Millionen Excel-Lösungen im
Forumsarchiv
Forumbeitrag
Excel-Version des Fragestellers:
365 privat
Erfahrungslevel des Fragestellers:
Basiskenntnisse in VBA
daniel
20.05.2026 20:12:10
AW: VBA - Dateien umbenennen je nach Dateiegenschaft
Hi

ja, kann man machen.

schau dir mal den Beispielcode an.

da ich zum bestimmen der neusten und größten Dateien das Sortieren verwende und Sortieren in einem Excelblatt einfacher ist als in Arrays innerhalb von VBA benötigst du ein freies Tabellenblatt in dem die Namen, Dateigröße und erstelldatum eingetragen werden können.

Sub test()

Dim Datei As String
Dim Pfad As String

Pfad = "C:\Test\"

Datei = Dir(Pfad & "*.csv")

With Sheets("Tabelle1")
.Cells.Clear
'--- CSV-Dateien aus verzeichnis lesen
Do Until Datei = ""
With .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0)
.Offset(0, 0).Value = Datei
.Offset(0, 1).Value = FileDateTime(Pfad & Datei)
.Offset(0, 2).Value = FileLen(Pfad & Datei)
End With
Datei = Dir
Loop
With .Cells(2, 1).CurrentRegion
'neuste Dateien über sortieren bestimmen (neusten nach oben)
.Sort key1:=.Cells(1, 2), order1:=xlDescending, Header:=xlNo
'--- oberen drei nach größe sortieren
.Resize(3).Sort key1:=.Cells(1, 3), order1:=xlDescending, Header:=xlNo

Name Pfad & .Cells(1, 1) As Pfad & "L1.csv"
Name Pfad & .Cells(2, 1) As Pfad & "L2.csv"
Name Pfad & .Cells(3, 1) As Pfad & "L3.csv"
End With
.Cells.Clear
End With


End Sub


FileDateTime gibt dir das letzte Speicherdatum der Datei

Dateien mit den neuen Namen (L1, L2 ) sollten nicht vorhanden sein.
Falls doch, müsstest du die vorher löschen oder umbenennen, oder das Makro um eine entsprechende Prüfung erweitern.

Gruß Daniel
Als Antwort auf diesen Beitrag
Christian
20.05.2026 19:02:49
VBA - Dateien umbenennen je nach Dateiegenschaft
Hallo,

ich wollte mal fragen, ob das hier mit VBA möglich ist, ich frage nach VBA, weil ich es in ein bestehendes Makro einbauen will, welches u.a. dann im nächsten Schritt die entsprechende PQ Abfrage aktualisiert und die Daten weiterverarbeitet.

Jedenfalls was ich mir vorstelle, die 3 neuesten csv-Dateien in meinem Download Ordner sollen umbenannt werden, die größte in L1.csv, die zweitgrößte in L2.csv und die kleinste der dreien in L3.csv

Ist das mit VBA lösbar?

Danke
Chrisian
Folgenachrichten
Antwort auf Beitrag erstellen
Bitte einen Anwendernamen ohne @ eingeben.
Bitte das Passwort eingeben.
Bitte eine gültige E-Mail-Adresse eingeben.
Bitte einen Betreff eingeben.
Weitere Optionen
Aktivieren, wenn die Frage/der Beitrag noch nicht beantwortet wurde und unter Listen > Offene Threads erscheinen soll.
Beispieldatei hochladen

Bitte einen Nachrichtentext eingeben.