Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
860to864
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
860to864
860to864
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

860to864: Dateien aus Ordner nach Datum sortiert umbenennen

Dateien aus Ordner nach Datum sortiert umbenennen
11.04.2007 23:23:00
Timo
Hallo Ihr,
Ich habe mir folgenden Code aus der Excelhilfe und aus dem Archiv zusammengebastelt.
Ich möchte mit diesem Code alle Dateien in einem Ordner umbenennen.
Das funktioniert eigentlich auch schon ganz gut, nur erfolgt die Nummerierung alphabetisch.
Wie kann ich die Dateien nach dessen Datum aufsteigend von dem weitesten in der Vergangeheit liegen Datum nummerieren lassen.
Beispiel die Datei B.jpg hat das Datum 05.01.2007 und die Datei A.jpg hat das Datum 10.01.2007, dann soll die Datei B.jpg Bild 01.jpg und die Datei A.jpg Bild 02.jpg heißen.
Code:

Sub Dateien_umbennen()
Dim fs, f, f1, fc, s, t, z
Dim strfolder As String
Set fs = CreateObject("Scripting.FileSystemObject")
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
z = .SelectedItems(1)
End With
Set f = fs.GetFolder(z)
Set fc = f.Files
On Error Resume Next
For Each f1 In fc
t = Format(t + 1, "##00")
f1.Name = "Bild " & t & ".jpg"
Next
End Sub
Danke für Eure Hilfe!
Gruß Timo

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

Betreff
Datum
Anwender
Anzeige
AW: Dateien aus Ordner nach Datum sortiert umbenennen
12.04.2007 12:03:00
Rudi
Hallo,

Sub Dateien_umbennen_Datum()
Dim fs, f, f1, fc, s, t, z
Dim strAlt As String, strNeu As String
Set fs = CreateObject("Scripting.FileSystemObject")
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
z = .SelectedItems(1)
End With
Sheets(1).Cells.Clear
Set f = fs.GetFolder(z)
Set fc = f.Files
On Error Resume Next
For Each f1 In fc
With Sheets(1).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
.Value = f1.Name
.Offset(0, 1) = f1.datelastmodified
End With
Next
With Sheets(1)
.Range("A2").Sort Key1:=Range("B2"), Order1:=xlAscending, Header:= _
xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortTextAsNumbers
For t = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
strAlt = z & "\" & .Cells(t, 1)
strNeu = "Bild " & Format(t - 1, "0000") & Right(strAlt, 4)
Name strAlt As strNeu
Next t
End With
End Sub

Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
Anzeige
Super Danke!
12.04.2007 12:39:11
Timo
Hallo Rudi,
vielen Dank! Ich hoffe ich kann das auch mal irgendwann!
Gruß Timo

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige