Hallo VBLer,
ich suche nach einer Lösung zu folgendem Problem.
Ich habe eine Datei mit einem Arbeitsblatt "Database" in dieses sollen nun verschiedene Arbeitsblätter (ca. 10) aus einer anderen Datei untereinander weg reinkopiert werden. Dabei soll aus dem ersten Arbeitsblatt die Beschriftung stehen bleiben. Die Arbeitsblätter sind alle gleich aufgebaut.
Ich habe es zwar schon geschafft einen Makro dafür zu schreiben, aber dieser ist sehr umständlich da er jedes einzelne Arbeitsblatt mit "Namen" anspricht. Ich habe schon gesehen, dass es auch mit For i ... geht. Des Weiteren stört mich bei dem aktuellen Makro, dass ich die Datei mit den vielen Tabellenblättern in ein bestimmten Pfad haben muss.
Ich hoffe, dass mir einer helfen kann.
Ich habe schon bisschen was gemacht..
Dim i As Long
Dim sPfad As String
Dim sDatei As String
Dim vFileToOpen As Variant
Dim lngLZ As Long
Dim blnÜberschrift As Boolean
Dim i as integer
Dim Bereich As Range
Dim strLC As String
Dim k As Integer |
vFileToOpen = Application.GetOpenFilename("Excel Files (*.xls*), *.xls*", , , , True)
If Not IsArray(vFileToOpen) Then Exit Sub
iCalc = Application.Calculation
On Error GoTo ENDE:
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
For i = 1 To UBound(vFileToOpen)
sDatei = Dir(vFileToOpen(i))
sPfad = Left(vFileToOpen(i), InStr(vFileToOpen(i), sDatei) - 1)
For k = 8 To Worksheets.Count
With Worksheets(i).UsedRange
strLC = .Cells(.Rows.Count, .Columns.Count).Address
Set Bereich = .Range("A2:" & strLC)
Bereich.Copy Destination:= _
Wks.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
End With
End Sub
Sowas ähnliches würde ich gerne haben wollen.
Vielen lieben Dank!!
|