AW: Excel-Dateien auslesen (VBA)
30.05.2005 10:34:07
Gaidin
Hmm,
mein Problem liegt wo anders. Ich habe das Auslesen mit Application.Filesearch gelöst. Was mir eigentlich fehlt ist, dass der auzulesende Range dynamisch ermittelt wird. Ich habe da bisher ohne richtige Lösung dran rumgefuhrwerkt: Hier der Code:
******************************************************
Sub Daten_lesen()
Dim basebook As Workbook
Dim mybook As Workbook
Dim sourceRange As Range
Dim destrange As Range
Dim rnum As Long
Dim i As Long
Dim a As Long
Dim strend As String
Application.ScreenUpdating = False
With Application.FileSearch
.NewSearch
.LookIn = "D:\Daten\"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() > 0 Then
Set basebook = ThisWorkbook
rnum = 1
For i = 1 To .FoundFiles.Count
Set mybook = Workbooks.Open(.FoundFiles(i))
strend = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Offset(0, 1)
Set sourceRange = mybook.Worksheets(1).Range("A2").End(strend)
With sourceRange
Set destrange = basebook.Worksheets(1).Cells(rnum, 1). _
Resize(.Rows.Count, .Columns.Count)
End With
destrange.Value = sourceRange.Value
mybook.Close
rnum = rnum + a
Next i
End If
End With
Application.ScreenUpdating = True
End Sub
*******************************************************
Das Problem liegt in diesem Bereich:
strend = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Offset(0, 1)
Set sourceRange = mybook.Worksheets(1).Range("A2").End(strend)
Ich finde einfach nicht die letzte Zelle des Ranges.
Weisst du da weiter?
Gaidin