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

Länge einer Datei prüfen

Forumthread: Länge einer Datei prüfen

Länge einer Datei prüfen
21.07.2003 10:17:54
Matthias
Hallo Zusammen,

ist es mit Hilfe von Excel möglich, in einer Ordnerstrucktur die Zeichenlänge aller dateien zu prüfen und alle Dateinamen die mehr als 255 Zeichen haben in einer Arbeitsmappe mit pfad aufzulisten. Wenn ja, wie??
Schonmal vorab besten Dank für die Hilfe!

Gruß
Matthias
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Länge einer Datei prüfen
21.07.2003 10:43:13
Bernd Held
Hallo Matthias,

so was in der Art sollte funktionieren:


Sub DateienLänger256()
Dim i As Integer
Dim i_Datei As Integer

i = 1
With Application.FileSearch
    .Filename = "*.xls"
    .LookIn = "D:\Eigene Dateien\"
    .SearchSubFolders = True
    .Execute
    For i_Datei = 1 To .FoundFiles.Count
       If Len(.FoundFiles(i_Datei)) > 256 Then Cells(i, 1).Value = .FoundFiles(i_Datei)
       i = i + 1
    Next i_Datei
 End With
End Sub
     Code eingefügt mit Syntaxhighlighter 1.14



Viele Grüße
Bernd
MVP für Microsoft Excel
Excel-Tipps, VBA-Bücher mit Leseproben(PDF), VBA-Forum und VBA-Schulungen unter: http://held-office.de



Anzeige
;
Anzeige

Infobox / Tutorial

Länge einer Datei in Excel prüfen


Schritt-für-Schritt-Anleitung

Um die Länge von Dateinamen in einem bestimmten Ordner zu prüfen und alle Dateinamen, die länger als 255 Zeichen sind, in einer Excel-Arbeitsmappe aufzulisten, kannst Du den folgenden VBA-Code verwenden:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub DateienLänger256()
       Dim i As Integer
       Dim i_Datei As Integer
    
       i = 1
       With Application.FileSearch
           .Filename = "*.xls"
           .LookIn = "D:\Eigene Dateien\"
           .SearchSubFolders = True
           .Execute
           For i_Datei = 1 To .FoundFiles.Count
               If Len(.FoundFiles(i_Datei)) > 256 Then
                   Cells(i, 1).Value = .FoundFiles(i_Datei)
                   i = i + 1
               End If
           Next i_Datei
       End With
    End Sub
  4. Ändere den Pfad in .LookIn entsprechend dem Ordner, den Du durchsuchen möchtest.

  5. Schließe den VBA-Editor und gehe zurück zu Excel.

  6. Führe das Makro aus, indem Du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.

Die Dateinamen, die länger als 255 Zeichen sind, werden in der ersten Spalte Deiner Arbeitsmappe aufgelistet.


Häufige Fehler und Lösungen

  • Fehler: Das Makro läuft nicht oder es wird eine Fehlermeldung angezeigt.

    • Lösung: Stelle sicher, dass die Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen und aktiviere die Option „Alle Makros aktivieren“.
  • Fehler: Es werden keine Dateien gefunden.

    • Lösung: Überprüfe den angegebenen Ordnerpfad. Stelle sicher, dass der Pfad korrekt und die Dateien vorhanden sind.

Alternative Methoden

Falls Du keine VBA-Lösung verwenden möchtest, kannst Du auch die Windows-Suchfunktion nutzen, um die Dateinamen zu überprüfen. Eine andere Möglichkeit ist die Verwendung von Power Query, um die Daten aus einem Ordner in Excel zu importieren und die Länge der Dateinamen zu analysieren.


Praktische Beispiele

Ein Beispiel könnte sein, dass Du einen Ordner mit vielen Excel-Dateien hast, und Du möchtest sicherstellen, dass die Dateinamen nicht zu lang sind, um Komplikationen bei der Verarbeitung zu vermeiden. Mit dem oben genannten VBA-Code kannst Du schnell alle problematischen Dateinamen identifizieren und entsprechende Maßnahmen ergreifen.


Tipps für Profis

  • Verwende die Debug.Print-Anweisung im VBA-Code, um die Ausgaben im Direktfenster anzuzeigen, während das Makro ausgeführt wird. So kannst Du den Fortschritt besser verfolgen.
  • Experimentiere mit anderen Dateitypen, indem Du die *.xls-Erweiterung im Code änderst, um auch andere Dateien zu durchsuchen.

FAQ: Häufige Fragen

1. Kann ich den Code anpassen, um auch andere Dateitypen zu überprüfen?
Ja, Du kannst die Zeile .Filename = "*.xls" ändern, um andere Dateitypen zu prüfen, z.B. .Filename = "*.txt" für Textdateien.

2. Funktioniert dieser Code in allen Excel-Versionen?
Der Code sollte in den meisten modernen Excel-Versionen (z.B. Excel 2010 und neuer) funktionieren. Beachte, dass die Application.FileSearch-Methode in neueren Excel-Versionen nicht mehr unterstützt wird. Du kannst eine alternative Methode verwenden, um Dateien aufzulisten, falls nötig.

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