Bereich in anderes Tab.blatt kopieren
#1
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
Top
#2
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
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • soldblub
Top
#3
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.

???
Top
#4
Hallo,

(04.04.2017, 11: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
Gruß Stefan
Win 10 / Office 2016
Top
#5
Nochmal Vielen Dank.
Top
#6
Hi,

(04.04.2017, 10: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?
Top
#7
Hallo Ralf,

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

(05.04.2017, 10: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, 10: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?
Top
#9
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
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste