ich möchte aus dem Tabellenblatt "Aktuelle Werte" automatisch die beschriebenen Zellen per Button kopieren und am Ende des Tabellenblattes "Historie" einfügen. Also nicht an eine feste Position in "Historie", sondern dynamisch immer am Ende der Liste in "Historie".
Ich hab es zuerst mit Range.select probiert, erhalte da aber auch Laufzeitfehler 1004. Nach ausführlicher Suche in diesem Forum habe ich verschiedene Vorschläge probiert (z.B. CommandButton2.TakeFocusOnClick = False) und auch unten stehenden Code, es kommt aber immer wieder an der gleichen Stelle der Laufzeitfehler 1004 (Nämlich dort, wo das ermittelte Ende des Tabellenblattes "Historie", hier die Variable "Sp", zugewiesen wird. Eine absolute Positionierung funktioniert aber. Trotzdem soll die Kopie ja immer am Ende einer schon vorhandenen Liste in "Historie" zugefügt werden.)
Ohne Button funktioniert es übrigens hervorragend, es soll aber unbedingt der Button verwendet werden.
Private Sub CommandButton2_Click()
CommandButton2.TakeFocusOnClick = False
Zeilen = Range("A1").End(xlDown).Row
Spalten = Range("A1").End(xlToRight).Column
Dim rngSource As Range, rngTarget As Range
Dim Sp As Integer
Set rngSource = Workbooks("Datei.xls").Worksheets("Aktuelle Werte").Range(Cells(1, 1), _
Cells(Zeilen, Spalten))
Sp = Workbooks("Datei.xls").Worksheets("Historie").Range("A1").End(xlDown).Row
Set rngTarget = Workbooks("Datei.xls").Worksheets("Historie").Range(Cells(Sp, 1), _
Cells(Zeilen, Spalten))
rngSource.Copy rngTarget
End Sub
Ich bin für jede Hilfe dankbar!
Viele Grüße,
Mathias