AW: Dateien aus Verzeichnis in neue Datei einlesen
11.05.2007 10:22:13
Rudi Maintaire
Hallo,
Sub DateienLesen()
Dim oFS As FileSearch, i As Integer
Dim wkb As Workbook, wkbFound As Workbook
Set oFS = Application.FileSearch
With oFS
.LookIn = "s:\temp\import"
.FileType = msoFileTypeExcelWorkbooks
If .Execute > 0 Then
For i = 1 To .FoundFiles.Count
Set wkbFound = Workbooks.Open(.FoundFiles(i))
If wkb Is Nothing Then
wkbFound.Sheets(1).Copy
Set wkb = ActiveWorkbook
Else
wkbFound.Sheets(1).Copy wkb.Sheets(1)
End If
ActiveSheet.Name = CheckSheetName(ActiveSheet.Range("B4"))
wkbFound.Close False
Next i
End If
End With
End Sub
Function CheckSheetName(strName As String) As String
Dim notAllowed As Variant
Dim n As Integer
'Im Tabellennamen nicht zulässige Zeichen
notAllowed = Array(":", "\", "/", "?", "*", "[", "]")
'unerlaubte Zeichen durch _ ersetzen
For n = 0 To UBound(notAllowed)
strName = Replace(strName, notAllowed(n), "_")
Next
'Namen auf 31 Zeichen begrenzen
CheckSheetName = Left(strName, 31)
End Function
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe