Microsoft Excel

Herbers Excel/VBA-Archiv

Alle Dateien in einem Ordner umbenennen

Betrifft: Alle Dateien in einem Ordner umbenennen von: dip
Geschrieben am: 04.09.2014 10:54:55

Guten Tag Allerseits,

Gerne würde ich folgende Problemstellung in das Forum einbringen.

Ich habe einen Ordner mit einer Vielzahl von Dateien, alles .xlsm.
Jede Datei hat einen individuellen Namen.
Nun würde ich gerne alle Dateien in diesem Ordner nach folgender Syntax automatisch umbenennen lassen:

"aktueller Dateiname" - "fixer Wert" (zB. Plan) - "aktuelles Datum" (04.09.2014) - "fortlaufende Nummer" (1,2,3...)

Wäre dies möglich umzusetzen?

Bin für jede Hilfe dankbar!

Beste Grüsse
Patrick

  

Betrifft: AW: Alle Dateien in einem Ordner umbenennen von: Rudi Maintaire
Geschrieben am: 04.09.2014 11:11:45

Hallo,

Sub umbenennen()
  Dim sDatei As String, sPfad As String, iZaehler As Integer
  Const FixerWert As String = "Plan"
  sPfad = "c:\test\"
  sDatei = Dir(sPfad & "*.xlsm")
  Do While sDatei <> ""
    iZaehler = iZaehler + 1
    Name sPfad & sDatei As sPfad & _
    Join(Array(Left(sDatei, Len(sDatei) - 5), _
               FixerWert, _
               Format(Date, "yyyymmdd"), _
               Format(iZaehler, "000")), "-") & ".xlsx"
    sDatei = Dir
  Loop
End Sub

Gruß
Rudi


  

Betrifft: AW: Alle Dateien in einem Ordner umbenennen von: dip
Geschrieben am: 04.09.2014 11:46:00

Hallo Rudi,

Danke für deine Antwort!

Leider funktioniert es bei mir nicht ganz.
Beim Ausführen des Makros wird die Datei geöffnet und dann ist das Makro zu ende.
Die Dateinamen haben sich nicht verändert.
Ist es richtig, dass die Datei geöffnet werden muss um die Datei umzubenennen?

Grüsse
Patrick


  

Betrifft: AW: Alle Dateien in einem Ordner umbenennen von: Rudi Maintaire
Geschrieben am: 04.09.2014 12:31:07

Hallo,
nein, die Dateien müssen nicht geöffnet werden.
Ist aber ein Fehler drin, werden in xlsx umbenannt:

Sub umbenennen()
  Dim sDatei As String, sPfad As String, iZaehler As Integer
  Const FixerWert As String = "Plan"
  sPfad = "c:\test\"
  sDatei = Dir(sPfad & "*.xlsm")
  Do While sDatei <> ""
    iZaehler = iZaehler + 1
    Name sPfad & sDatei As sPfad & _
    Join(Array(Left(sDatei, Len(sDatei) - 5), _
               FixerWert, _
               Format(Date, "yyyymmdd"), _
               Format(iZaehler, "000")), "-") & ".xlsm"
    sDatei = Dir
  Loop
End Sub
Gruß
Rudi


  

Betrifft: AW: Alle Dateien in einem Ordner umbenennen von: dip
Geschrieben am: 04.09.2014 13:37:13

Hallo Rudi,

Funktioniert wie gewünscht!
Vielen herzlichen Dank Rudi, hast mir wirklich weitergeholfen :-)

Wünsche Dir noch einen schönen Tag!

Grüsse
Patrick


 

Beiträge aus den Excel-Beispielen zum Thema "Alle Dateien in einem Ordner umbenennen"