Das Archiv des Excel-Forums

Dateiinfo aller Dateien in allen Verz./Unterverz

Bild

Betrifft: Dateiinfo aller Dateien in allen Verz./Unterverz
von: StefanK

Geschrieben am: 03.08.2008 09:37:36

Hallo liebe Herber-Freunde
mit folgendem Code (Quelle Archiv) kann ich alle Dateiinformationen aus einem definierten Verzeichnis auslesen >> funktioniert prima !
Ich benötige jedoch eine Möglichkeit, daß ein Makro dieses auch für die jeweiligen Unterverzeichnisse und der darin enthaltenen Dateien durchführt !
Wie kann man so etwas machen ?
Freu mich auf eine Antwort
Besten Gruß
Stefan
hier der Code:
' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************
Option Explicit


Sub Dateieigenschaften()
'von k.rola
Const STRFOLDER As String = "D:\Daten" 'anpassen
Dim objShell As Object
Dim objFolder As Object
Dim x As Byte
Dim spalte As Integer
Dim zeile As Long
Dim varName, arrHeaders(34)
If Dir(STRFOLDER, 16) = "" Then
MsgBox "Der Ordner " & STRFOLDER & " wurde nicht gefunden!" & Space(10), 64, "weise hin..."
Exit Sub
End If
Application.ScreenUpdating = False
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(STRFOLDER)
spalte = 1
For x = 0 To 33
arrHeaders(x) = objFolder.GetDetailsOf(varName, x)
Cells(1, spalte + x) = arrHeaders(x)
Next
Rows(1).Font.Bold = True
zeile = 2
For Each varName In objFolder.Items
For x = 0 To 33
Cells(zeile, spalte + x) = objFolder.GetDetailsOf(varName, x)
Next
zeile = zeile + 1
Next
Columns.AutoFit
Application.ScreenUpdating = True
End Sub


Bild

Betrifft: AW: Dateiinfo aller Dateien in allen Verz./Unterverz
von: Nepumuk
Geschrieben am: 03.08.2008 10:30:15
Hallo Stefan,
wie sollen die dann dargestellt werden? Das Shell-Objekt lässt sich nicht so verschachteln, dass das in einem Durchgang geht. Am einfachsten wäre es, die Ordner selbst wegzulassen und alle Dateien einzeln zu parsen. Man könnte ja den kompletten Pfad z.B. in die erste Spalte schreiben.
Gruß
Nepumuk

Bild

Betrifft: AW: Dateiinfo aller Dateien in allen Verz./Unterverz
von: StefanK

Geschrieben am: 03.08.2008 10:39:33
Hallo Nepumuk
vielen Dank für die schnelle Antwort.
Daran, alle Dateien in ein Verzeichnis zu packen hab ich auch schon gedacht.
Nur sind es xx Unterverzeichnisse mit mehr als 1000 Dateien
Das gestaltet sich dann als "Wahnsinns-Arbeit" ;=)
Die Darstellung wäre aus meiner Sicht wie folgt (jeweils in einer Spalte)
Verzeichnis (wäre neu)
Name
Größe
Typ
u.s.w.
ggfs auch Verzeichnis und Name in einer Spalte / Zelle
ne Idee ?? :=)
Gruß
Stefan

Bild

Betrifft: AW: Dateiinfo aller Dateien in allen Verz./Unterverz
von: Hajo_Zi
Geschrieben am: 03.08.2008 10:45:26
Hallo Stefan,
vielleicht wäre dies http://hajo-excel.de/chCounter3/getfile.php?id=21 ein Ansatz?


Bild

Betrifft: AW: Dateiinfo aller Dateien in allen Verz./Unterverz
von: StefanK

Geschrieben am: 03.08.2008 11:42:16
Hallo Hajo
als Ansatz perfekt - nur:
Wichtig sind mir die Dateiinfo's - damit kann ich sie leider nicht auslesen
ich weiss leider nicht, wie man den Ansatz weiterentwickeln muss
Gruß
Stefan

Bild

Betrifft: AW: Dateiinfo aller Dateien in allen Verz./Unterverz
von: Nepumuk
Geschrieben am: 03.08.2008 11:36:49
Hallo Stefan,
versuch es mal damit:

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Public Sub Dateieigenschaften()
    Const STRFOLDER As String = "D:\Eigene Dateien" 'anpassen
    Dim objShell As Object, objFolder As Object
    Dim lngColumn As Long, lngRow As Long
    Dim vntFile As Variant
    Dim strPath As String, strFile As String
    
    If Dir(STRFOLDER, 16) = "" Then
        MsgBox "Der Ordner " & STRFOLDER & " wurde nicht gefunden!", vbCritical, "Fehler"
        Exit Sub
    End If
    
    Application.ScreenUpdating = False
    
    Set objShell = CreateObject("Shell.Application")
    Set objFolder = objShell.Namespace(STRFOLDER)
    
    Cells.Clear
    Cells(1, 1).Value = "Pfad"
    lngRow = 1
    
    For lngColumn = 0 To 50
        Cells(lngRow, lngColumn + 2) = objFolder.GetDetailsOf("", lngColumn)
    Next
    
    Rows(1).Font.Bold = True
    
    With Application.FileSearch
        .NewSearch
        .FileType = msoFileTypeAllFiles
        .LookIn = STRFOLDER
        .SearchSubFolders = True
        .Execute
        
        For Each vntFile In .FoundFiles
            lngRow = lngRow + 1
            strPath = Left$(vntFile, InStrRev(vntFile, "\") - 1)
            strFile = Right$(vntFile, Len(vntFile) - InStrRev(vntFile, "\"))
            Set objFolder = objShell.Namespace((strPath))
            Cells(lngRow, 1).Value = strPath
            For lngColumn = 0 To 50
                Cells(lngRow, lngColumn + 2).Value = objFolder.GetDetailsOf( _
                    objFolder.ParseName(strFile), lngColumn)
            Next
        Next
        
    End With
    
    Columns.AutoFit
    Application.ScreenUpdating = True
    
End Sub

Gruß
Nepumuk

Bild

Betrifft: Perfekt !
von: StefanK

Geschrieben am: 03.08.2008 19:33:07
Hallo Nepumuk
PERFEKTE Lösung !
Danke Dir sehr
Das hat mir sehr weitergeholfen
... lösung ist in meiner persönlichen FAQ-Liste gelandet ;=)
Besten Dank und Gruss
Stefan

Bild

Betrifft: AW: Dateiinfo aller Dateien in allen Verz./Unterverz
von: Tino
Geschrieben am: 03.08.2008 14:30:53
Hallo,
habe mal etwas zusammengebastelt.
Der Original- Code stammt von Nepumuk habe diesen nur etwas angepasst.
https://www.herber.de/bbs/user/54305.xls
Gruß Tino

Bild

Betrifft: Korrektur, wegen Unterordner
von: Tino

Geschrieben am: 03.08.2008 15:14:28
Hallo,
habe ich fasst vergessen.
Mach aus der Zeile
FindFiles strFolder, "*", lngFilecount, False
FindFiles strFolder, "*", lngFilecount, True
oder einfach nur
FindFiles strFolder, "*", lngFilecount
Damit die Unterordner mit eingelesen warden.
Gruß Tino

Bild

Betrifft: AW: Korrektur, wegen Unterordner
von: StefanK
Geschrieben am: 03.08.2008 19:31:22
Hallo Tino
danke für Deine Antwort - die Datei
interessante Lösung (hab Datei gespeichert)
leider liefert er nicht alle Informationen
Besten Dank für die Antwort
Gruß
Stefan
ps: lösung von nepumuk ist perfekt

 Bild

Excel-Beispiele zum Thema "Dateiinfo aller Dateien in allen Verz./Unterverz "

Dateiinformationen auslesen download Alle Dateien im Verzeichnis öffnen download
Dateien listen download 400 leere Textdateien anlegen download
XL-Dateien in UserForm listen download XL5/7-Dateien nach XL8 konvertieren download
Dateien aus Listbox auslesen und öffnen download Excel-Dateien eines Ordners listen download
Alle Dateien ab einem bestimmten Datum listen download Alle Dateien eines Verzeichnisses drucken download
Textdateien verbinden download Serie von Dateien in das XL5/7-Format konvertieren download
Verzeichnisbaum aufrufen und Dateien in ListBox auflisten download Dateien einer Ordnerliste in einer Tabelle zusammenstellen download
Daten aus allen Dateien eines Verzeichnisses zusammenführen download Hyperlinks zu allen Excel-Dateien eines Verzeichnisses erstellen download
Dateien in einem Verzeichnis und Unterverzeichnissen suchen download XL-Dateien aus Haupt- und Unterverzeichnissen einlesen download
Die Eigenschaft "Stichwort" in allen Dateien eines Ordners ändern download Textdateien vergleichen und Unterschiede dokumentieren download
Löschen von Dateien beim Schließen einer Arbeitsmappe download Grafikdateien suchen download
Erste Blätter aus allen Dateien eines Verzeichnisses sammeln download Von allen Arbeitsblättern der Mappe HTML-Dateien anlegen download
Textdateien auslesen und in Werte in Zellen eintragen download Werte nach Gruppen aufteilen und in gesonderten Dateien speichern download
Fragen aus Textdateien in UserForm-Label einlesen download Text in Textdateien suchen und Fundzeilen in Tabelle ausgeben download
Alle Dateien löschen, die älter als 30 Tage sind download Dateien mit Angabe des Dateidatums mit Hyperlink listen download
Dateien listen und gekennzeichnete öffnen download UserForm-TextBoxes-Texte in Textdateien speichern download
Tabellenblattinhalte in getrennten Textdateien speichern download Dateien listen und Blätter in neue Arbeitsmappe kopieren download
Bei Doppelklick Textdateien in Editor öffnen download Dateiliste mit allen xl-Dateien und Hyperlinks erstellen download
Aufruf von Textdateien protokollieren download Textdateien mit einer Zeile in Tabelle einlesen download
Alle Textdateien eines Verzeichnisses importieren download Dateien öffnen, Verknüpfungen aktualisieren, speichern, schießen download
Dateien suchen download Dateien mit bestimmtem Inhalt suchen download