Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Dateinamen kürzen mit VBA

Dateinamen kürzen mit VBA
02.10.2020 09:58:11
Norbert
Hallo Experten,
ich habe in einem Ordner viele Excel Workbooks, dessen Dateinamen wie folgt aufgebaut sind und ich würde gerne die Dateinamen per VBA automatisiert umbenennen, damit ich diesen Vorgang nicht immer händisch erledigen muss.
Die Dateinamen beginnen immer mit "DEA00x", wobei das x eine fortlaufende Nummer ist und dahinter ein Text, also zum Bespiel: DEA001 Aktuell.xlsx, DEA002 Vergangenheit.xlsx, DEA003 Uebersicht.xlsx usw.
Ich möchte nur die ersten 6 Stellen in den Dateinamen stehen haben, also DEA001.xlsx, DEA002.xlsx, DEA003.xlsx usw.
Vielen Dank im Voraus für jeden Lösungsansatz um mir das manuelle Abändern zu ersparen, wenn es eine Möglichkeit gibt.
Beste Grüße
Norbert
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateinamen kürzen mit VBA
02.10.2020 10:29:35
Daniel
Hi
dim Pfad AS String
dim Datei AS String
Pfad = "C:\Dein\Pfad\
Datei = dir(Pfad & "DEA*.xlsx)
Do until Datei = ""
Name Pfad & Datei AS Pfad & Left(Datei, 6) & ".xlsx"
Datei = Dir
Loop
Gruß Daniel
AW: Dateinamen kürzen mit VBA
02.10.2020 11:16:09
Norbert
Hallo Daniel,
vielen Dank für Deine Mühe und die schnelle Antwort.
Ich erhalte in Zeile 4 leider eine Fehlermeldung: Datei = Dir(Pfad & "DEA*.xlsx) eine Fehlermeldung, mit welcher ich nichts anfangen kann: Compile error: Expected: list seperator or ).
Hast Du eine Idee woran das liegen kann?
Beste Grüße
Norbert
Anzeige
AW: Dateinamen kürzen mit VBA
02.10.2020 11:35:39
Daniel
Da hast du das Anführungszeichen am Ende des Textes vergessen.
Gruß daniel
;
Anzeige
Anzeige

Infobox / Tutorial

Dateinamen mit VBA effizient kürzen


Schritt-für-Schritt-Anleitung

Um die Dateinamen in einem Ordner automatisch zu kürzen, kannst Du folgendes VBA-Skript verwenden. Dieses Skript sucht nach Excel-Dateien, deren Namen mit "DEA00x" beginnen, und kürzt sie auf die ersten 6 Zeichen.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen und dann auf Modul, um ein neues Modul zu erstellen.
  3. Füge den folgenden Code in das Modul ein:
Sub DateinamenKuerzen()
    Dim Pfad As String
    Dim Datei As String
    Pfad = "C:\Dein\Pfad\" ' Ändere diesen Pfad entsprechend
    Datei = Dir(Pfad & "DEA*.xlsx")

    Do Until Datei = ""
        Name Pfad & Datei As Pfad & Left(Datei, 6) & ".xlsx"
        Datei = Dir
    Loop
End Sub
  1. Ändere den Pfad in den entsprechenden Ordner, in dem sich Deine Dateien befinden.
  2. Führe das Skript aus, indem Du F5 drückst oder auf Ausführen im Menü klickst.

Mit diesem Skript kannst Du zu lange Dateinamen automatisch kürzen und somit Zeit sparen.


Häufige Fehler und Lösungen

Fehler 1: Compile error: Expected: list separator or )
Ursache: Du hast möglicherweise ein Anführungszeichen am Ende der Dir-Funktion vergessen.
Lösung: Stelle sicher, dass die Zeile korrekt aussieht:

Datei = Dir(Pfad & "DEA*.xlsx")

Fehler 2: File not found
Ursache: Der angegebene Pfad ist falsch oder die Datei existiert nicht.
Lösung: Überprüfe den Pfad und stelle sicher, dass die Dateien vorhanden sind.


Alternative Methoden

Wenn Du kein VBA verwenden möchtest, gibt es auch manuelle Methoden, um Dateinamen zu kürzen:

  1. Umbenennen im Explorer: Du kannst die Dateien direkt im Windows Explorer umbenennen, indem Du mit der rechten Maustaste auf die Datei klickst und "Umbenennen" wählst.
  2. Batch-Umbenennung: Es gibt Software-Tools, die eine Batch-Umbenennung ermöglichen. Diese Tools bieten oft mehr Optionen, um Dateinamen zu ändern.

Praktische Beispiele

Angenommen, Du hast folgende Dateien in Deinem Ordner:

  • DEA001 Aktuell.xlsx
  • DEA002 Vergangenheit.xlsx
  • DEA003 Uebersicht.xlsx

Nach der Ausführung des VBA-Skripts würden die Dateinamen wie folgt aussehen:

  • DEA001.xlsx
  • DEA002.xlsx
  • DEA003.xlsx

Dies spart Dir viel Zeit, wenn Du regelmäßig mit vielen Dateien arbeitest, deren Namen zu lang sind.


Tipps für Profis

  • Sicherungskopie: Erstelle immer eine Sicherungskopie Deiner Dateien, bevor Du ein Skript zur Umbenennung ausführst.
  • Testlauf: Teste das Skript zuerst in einem kleinen Ordner mit wenigen Dateien, um sicherzustellen, dass es wie gewünscht funktioniert.
  • Erweiterungen: Du kannst das Skript anpassen, um auch andere Dateiformate zu berücksichtigen oder spezifische Filter anzuwenden.

FAQ: Häufige Fragen

1. Kann ich das Skript auch für andere Dateinamen verwenden?
Ja, Du kannst die Suchkriterien in der Dir-Funktion anpassen, um andere Dateinamen zu berücksichtigen.

2. Welche Excel-Version benötige ich?
Das Skript ist mit den meisten modernen Excel-Versionen kompatibel, die VBA unterstützen, einschließlich Excel 2016 und neuer.

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