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