Hallöchen,
Es geht ja "nur" noch um die Schleife und ich denke, vor allem um die Berechnungen darin? Manchmal hilft da schon die Überprüfung der Variablen und Ergebnisse. Gehe dazu den Code mal schrittweise durch.
Hallo matty
die markanten Teile des Codes sind diese drei Zeilen, man sieht das exellente Wissen von Uwe!
Mit Set oWb2 deklarierst du die Set Anweisung zum Objekt, benutzt als "Mappe2" in der For Next Schleife For Next mit Step40 heisst, du durchlaeufst sie in 40er Schritten, d.h. nur 40 mal. Wichtig ist das man Zwischen Zeilen überspringst! Um Resize zu verstehen schau mal was passiert wenn du es so machst:
Cells(2, 4).Resize(40).Select und Cells(2, 4).Resize(1,40).Select
Code:
Set oWbZ = Workbooks("daten.xlsm") 'entsprechend ändern
For i = 41 To 1601 Step 40
Workbooks("werte.xls").Sheets(1).Cells(2 + i - 40, 4).Resize(40).Copy oWbZ.Worksheets((i - 1) / 40).Cells(7, 3)