Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1032to1036
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
Inhaltsverzeichnis

Bestimmte Datei auflisten ?

Bestimmte Datei auflisten ?
24.12.2008 18:50:57
Selma
Hallo Leute,
wie kann ich von diesen Pfad (incl. Unterordner) G:\PRJ\ alle Dateien mit folgenden Namen Schnittstellenliste.xls in aktivem Arbeitsblatt ab Zelle A1 nach unten mit kompletten Pfad auflisten?
Besten Dank im Voraus !
Liebe Grüße,
Selma

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Filesearch
24.12.2008 19:38:09
Backowe
Hi,
ein gesegnetes Weihnachtsfest wünsche ich Dir!
VBA-Code:
Sub DateienAuflisten()
Dim i As Long
Dim Verz As String
Verz = "G:\PRJ\"
Columns(1).ClearContents
With Application.FileSearch
  .NewSearch
  .LookIn = Verz
  .SearchSubFolders = True
  .Filename = "Schnittstellenliste.xls"
  .Execute
  For i = 1 To .FoundFiles.Count
    Cells(i, "A") = .FoundFiles(i)
  Next i
End With
End Sub
Gruß Jürgen
AW: Bestimmte Datei auflisten ?
Hajo_Zi

Hallo Selma,
man sollte nicht mehrere Dateien mit dem gleichen Namen anlgen. Da kann man leicht die Übersicht verlieren.

AW: Bestimmte Datei auflisten ?
Tino

Hallo,
hier noch eine Updatefähige Version die auch unter xl2007 läuft.
Kommentare stehen im Code.
Option Explicit
Dim ErsteZelle As Range

Sub Read_Write_Files_In_Folder()
Range("A2", Cells(Rows.Count, 1)).Value = ""

'erste Zelle, ab welcher Zelle einfügen? 
Set ErsteZelle = Range("A2")

With Application
 .StatusBar = "Lese Daten, bitte warten..."
 .ScreenUpdating = False
    '1.Parameter Ordner, wo soll gesucht werden? 
    '2.Parameter Datei,* als Platzhalter verwenden,Optional leer ist alle 
    '3.Parameter mit Unterordner = True, Optional False ist ohne 
    '4.Parameter kompl. Pfad ausgeben = True, Optional nur Dateiname = False 
    ListFilesInFolder "G:\PRJ", "*Schnittstellenliste.xls", True, True

    'Spaltenbreide optimieren 
   Columns(ErsteZelle.Columns).AutoFit
  .ScreenUpdating = True
  .StatusBar = False
End With
End Sub

Sub ListFilesInFolder(SourceFolderName As String, Optional DateiFormat As String = "*.*", Optional IncludeSubfolders As Boolean = False, Optional FolderName As Boolean = False)
Dim FSO As Object, SourceFolder As Object, SubFolder As Object
Dim FileItem
Dim Status As Integer
 Set FSO = CreateObject("Scripting.FileSystemObject")
 Set SourceFolder = FSO.GetFolder(SourceFolderName)
        
On Error GoTo Err_Zugriff: 'sollte Ordener geschützt sein 
     
    For Each FileItem In SourceFolder.Files
        If LCase(FileItem) Like LCase(DateiFormat) Then
         ErsteZelle.Value = IIf(FolderName, FileItem, Right$(FileItem, Len(FileItem) - InStrRev(FileItem, "\")))
         Set ErsteZelle = ErsteZelle.Offset(1, 0)
        End If
    Next FileItem


    If IncludeSubfolders Then
        For Each SubFolder In SourceFolder.SubFolders
            ListFilesInFolder SubFolder.Path, DateiFormat, IncludeSubfolders, FolderName
        Next SubFolder
    End If

Err_Zugriff:
Set FileItem = Nothing: Set SourceFolder = Nothing: Set FSO = Nothing
End Sub


Gruß Tino

AW: Bestimmte Datei auflisten ?
Selma

Hallo zusammen,
vielen Dank, es funktioniert prima.
Ich wünsche Euch noch schöne Feiertage.
Liebe Grüße,
Selma
Anzeige
AW: Bestimmte Datei auflisten ?
24.12.2008 20:04:37
Hajo_Zi
Hallo Selma,
man sollte nicht mehrere Dateien mit dem gleichen Namen anlgen. Da kann man leicht die Übersicht verlieren.

AW: Bestimmte Datei auflisten ?
25.12.2008 10:47:00
Tino
Hallo,
hier noch eine Updatefähige Version die auch unter xl2007 läuft.
Kommentare stehen im Code.
Option Explicit
Dim ErsteZelle As Range

Sub Read_Write_Files_In_Folder()
Range("A2", Cells(Rows.Count, 1)).Value = ""

'erste Zelle, ab welcher Zelle einfügen? 
Set ErsteZelle = Range("A2")

With Application
 .StatusBar = "Lese Daten, bitte warten..."
 .ScreenUpdating = False
    '1.Parameter Ordner, wo soll gesucht werden? 
    '2.Parameter Datei,* als Platzhalter verwenden,Optional leer ist alle 
    '3.Parameter mit Unterordner = True, Optional False ist ohne 
    '4.Parameter kompl. Pfad ausgeben = True, Optional nur Dateiname = False 
    ListFilesInFolder "G:\PRJ", "*Schnittstellenliste.xls", True, True

    'Spaltenbreide optimieren 
   Columns(ErsteZelle.Columns).AutoFit
  .ScreenUpdating = True
  .StatusBar = False
End With
End Sub

Sub ListFilesInFolder(SourceFolderName As String, Optional DateiFormat As String = "*.*", Optional IncludeSubfolders As Boolean = False, Optional FolderName As Boolean = False)
Dim FSO As Object, SourceFolder As Object, SubFolder As Object
Dim FileItem
Dim Status As Integer
 Set FSO = CreateObject("Scripting.FileSystemObject")
 Set SourceFolder = FSO.GetFolder(SourceFolderName)
        
On Error GoTo Err_Zugriff: 'sollte Ordener geschützt sein 
     
    For Each FileItem In SourceFolder.Files
        If LCase(FileItem) Like LCase(DateiFormat) Then
         ErsteZelle.Value = IIf(FolderName, FileItem, Right$(FileItem, Len(FileItem) - InStrRev(FileItem, "\")))
         Set ErsteZelle = ErsteZelle.Offset(1, 0)
        End If
    Next FileItem


    If IncludeSubfolders Then
        For Each SubFolder In SourceFolder.SubFolders
            ListFilesInFolder SubFolder.Path, DateiFormat, IncludeSubfolders, FolderName
        Next SubFolder
    End If

Err_Zugriff:
Set FileItem = Nothing: Set SourceFolder = Nothing: Set FSO = Nothing
End Sub


Gruß Tino

Anzeige
AW: Bestimmte Datei auflisten ?
25.12.2008 12:17:00
Selma
Hallo zusammen,
vielen Dank, es funktioniert prima.
Ich wünsche Euch noch schöne Feiertage.
Liebe Grüße,
Selma

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige