Range Copy Paste führt zu Laufzeitfehler
25.05.2020 15:00:52
Rasenack
eigentlich wollte ich in meinem Code nur die erste Zeile aus einem Tabellenblatt in ein davor neu erstelltes Tabellenblatt kopieren. Grund dafür ist, dass die Überschriften und Formate übertragen werden sollen. Das Tabellenblatt hat den Namen des aktuellen Jahres. Das wird fortlaufend weitergeführt für die nächsten Jahre. Ich stoße allerdings auf ein Problem und komme nicht weiter.
Die Zeile in der er kopieren und einfügen soll führt zum Laufzeitfehler 1004. Ich habe nun schon die letzte Spalte als separate Variable anzulegen, um auszuschließen, dass diese den Fehler verursacht. Er ermittelt die 19 auf dem vorherigen Tabellenblatt. Im Direktbereich zeigt mir der Debugger für das Konstrukt mit dem Index + 1 eine 2 an, was ja auch stimmt. Könnt ihr mir eventuell helfen? Ich wäre für jede Hilfe dankbar.
Vielen Dank im Voraus!
Freundliche Grüße
André
dateiname = "Teilauszahlung.xlsx"
Set fl_1 = ThisWorkbook.Worksheets(1) 'Aus anderer Datei das Blatt 1
blattName = CStr(Year(fl_1.Cells(mieterzeile, kuendigung_zum).Value)) 'Blattname im Debugger _
ist 2020 wie gewünscht
With Workbooks(dateiname)
.Sheets.Add before:=Sheets(Worksheets.Count)
.ActiveSheet.name = blattName
leSpalte = .Worksheets(.Worksheets(blattName).Index + 1).Cells(1, Columns.Count).End( _
xlToLeft).Column
.Worksheets(.Worksheets(blattName).Index + 1).Range(Cells(1, 1), Cells(1, leSpalte)).Copy _
Destination:=.Worksheets(blattName).Range("A1")
Application.CutCopyMode = False
End With