Also mir fällt da jetzt nicht auf. Blatt ist aber gesetzt und nicht 0, i ist auch ein Wert größer -3 und obj.workbook existiert auch noch (ggf. mal prüfen). Habe es auch mal nachgestellt, bei mir klappt das. Alternativ probiere es mal so. Da du ja nur die Werte übertragen haben willst, kannst du die auch direkt an die Zellen zuweisen/schreiben. Also ohne copy aber mit einer Zuweisung. Unter Berücksichtung von dem Teil
Call objWorbook.Worksheets(blatt).Range("A201:V202").Copy
Call ThisWorkbook.Worksheets(1).Cells(4 + i, 1).PasteSpecial
sollte es dann so gehen (anstelle der beiden Zeilen)
ThisWorkbook.Worksheets(1).Range(Cells(4 + i, 1), Cells(4 + i + 1, 22)).Value = objWorbook.Worksheets(blatt).Range("A201:V202").Value
|