Clever-Excel-Forum

Normale Version: Bereich in anderes Tab.blatt kopieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Zusammen,

möchte per Click ein DatenBereich von einem Tabellenblatt ins andere kopieren:

Markieren klappt einwandfrei. Bei der Zeile mit dem Copy zeigt er mir immer wieder die Fehlermeldung (Falsche Anzahl an Argumenten oder ungültige Zuweisung zu einer Eigenschaft) an. Leider "sehe" ich den Fehler nicht.



Private Sub CommandButton1_Click()

Dim ZeileMax As Long
Dim ZeileMax2 As Long


'Ermittlung der letzten verwendeten Zeile
ZeileMax = Tabelle3.UsedRange.Rows.Count
ZeileMax2 = Tabelle7.UsedRange.Rows.Count


'Markieren ab Zeile A bis ZeileMax (Spalte A-AI):

'Tabelle3.Range(Cells(4, "A"), Cells(ZeileMax, "AI")).Select

'Kopieren
Tabelle3.Range(Cells(4, "A"), Cells(ZeileMax, "AI")).Copy ("Bearbeitung"), Cells(ZeileMax2, "A")

End Sub

Vielen Dank vorab
Hallo,

das selektieren braucht es nicht

Code:
Private Sub CommandButton1_Click()

Dim ZeileMax As Long
Dim ZeileMax2 As Long


'Ermittlung der letzten verwendeten Zeile
ZeileMax = Tabelle3.UsedRange.Rows.Count
ZeileMax2 = Tabelle7.UsedRange.Rows.Count


'Markieren ab Zeile A bis ZeileMax (Spalte A-AI):


'Kopieren
Tabelle3.Range(Cells(4, "A"), Cells(ZeileMax, "AI")).Copy Tabelle7.Cells(ZeileMax2, "A")

End Sub
Super danke, das hat geklappt.
Kann es sein das es einen Unterschied macht ob ich den Code auf dem Tabellenblatt habe von dem ich kopiere oder auf dem wo ich einfüge?

Bekomme dann den Hinweis:
Die Methode Range ist für das Object Worksheet ist fehlgeschlagen.

???
Hallo,

(04.04.2017, 10:22)soldblub schrieb: [ -> ]Kann es sein das es einen Unterschied macht ob ich den Code auf dem Tabellenblatt habe von dem ich kopiere oder auf dem wo ich einfüge?

Bekomme dann den Hinweis:
Die Methode Range ist für das Object Worksheet ist fehlgeschlagen.

Ja, so ist es.
Ändere den Code mal so ab.

Code:
Private Sub CommandButton1_Click()

Dim ZeileMax As Long
Dim ZeileMax2 As Long


'Ermittlung der letzten verwendeten Zeile
ZeileMax = Tabelle3.UsedRange.Rows.Count
ZeileMax2 = Tabelle7.UsedRange.Rows.Count


'Markieren ab Zeile A bis ZeileMax (Spalte A-AI):


'Kopieren
Tabelle3.Range(Tabelle3.Cells(4, "A"), Tabelle3.Cells(ZeileMax, "AI")).Copy Tabelle7.Cells(ZeileMax2, "A")

End Sub
Nochmal Vielen Dank.
Hi,

(04.04.2017, 09:20)soldblub schrieb: [ -> ]Leider  "sehe" ich den Fehler nicht.
   Tabelle3.Range(Cells(4, "A"), Cells(ZeileMax, "AI")).Copy ("Bearbeitung"), Cells(ZeileMax2, "A")

der Fehler liegt hier, was soll das sein?
Hallo Ralf,

"Bearbeitung" ist der Name des Tabellenblattes,
habe aber schon Hilfe bekommen.
Hi,

(05.04.2017, 09:40)soldblub schrieb: [ -> ]"Bearbeitung" ist der Name des Tabellenblattes,

Das ist mir schon klar, aber das ist in dem Makro-Code so nicht verwendbar, bzw. komplett falsch!

(05.04.2017, 09:40)soldblub schrieb: [ -> ]habe aber schon Hilfe bekommen.

Im Code von Stefan wurde ja der Fehler behoben.
Hast Du Deinen Fehler auch verstanden? Und wie Du das in Zukunft richtig machen musst?
Diese Code reicht:


Code:
Private Sub CommandButton1_Click()
   Tabelle3.cells(1).currentregion.resize(,9).offset(3).Copy tabelle7.cells(rows.count,1).end(xlup).offset(1)
End Sub