Microsoft Excel

Herbers Excel/VBA-Archiv

Kopieren von Zeile variabler Länge

Betrifft: Kopieren von Zeile variabler Länge von: Marco
Geschrieben am: 11.09.2020 19:55:13

Hallo,

es ist vermutlich ein Standardproblem, welches schon öfter behandelt wurde - aktuell komme ich aber leider nicht weiter. Vielleicht kann mir jemand einen kurzen Beispielcode geben - das würde mir sehr helfen den Code entsprechend anzupassen und zu verstehen.


Von Worksheet Tabelle1 soll ab einer bestimmten Zelle (z.B. M2) die ganze restliche Zeile kopiert werden (so viele Einträge wie vorhanden sind gemäß xlToRight) und in Worksheet Tabelle2 an bestimmter Stelle (z.B. A3) wieder als Zeile eingefügt werden.

Danke!

Betrifft: AW: Kopieren von Zeile variabler Länge
von: ralf_b
Geschrieben am: 11.09.2020 20:12:59

tabelle1.Range("M2:M"& Tabelle1.cells(2,Columns.count).end(xltoright).column).copy
tabelle2.Range("a3").paste

Betrifft: AW: Kopieren von Zeile variabler Länge
von: Marco
Geschrieben am: 11.09.2020 20:38:59

Hallo Ralf,

vielen Dank. Bekomme leider einen Laufzeitfehler "Objekt unterstützt Eigenschaft oder Methode nicht". Bezieht sich auf den Paste Befehl.

Ich hab mal zum testen folgendes probiert, um zu sehen was passiert:
tabelle1.Range("M2:M"& Tabelle1.cells(2,Columns.count).end(xltoright).column).select

Ergebnis: Gesamte Spalte M wird selektiert (anstelle Zeile M2 bis Ende)

Betrifft: AW: Kopieren von Zeile variabler Länge
von: ralf_b
Geschrieben am: 11.09.2020 21:04:13


alles auf eine zeile
Tabelle1.Range(Cells(2, "m"), Cells(2, Tabelle1.Cells(2, Columns.Count).End(xlToRight).Column)).Copy Tabelle2.Cells(3, 1)

Betrifft: AW:Hier: End(xlToLeft) o.r.T
von: GerdL
Geschrieben am: 11.09.2020 21:37:44

Gruß Gerd

Betrifft: "Fix" geht es manchmal fix
von: lupo1
Geschrieben am: 11.09.2020 20:37:31

Worksheets("Tabelle2").Range("A3") = Worksheets("Tabelle1").Range("M2:ZZ2")

Denn wer hat schon 700 Spalten in Gebrauch ...

Betrifft: AW: Kopieren von Zeile variabler Länge
von: Daniel
Geschrieben am: 11.09.2020 20:56:43

Hi

Dim C as Range
Set C = Sheets("Tabelle1").Range("M2")
Range(C, C.end(xltoright).Copy sheets("Tabelle2").Range("A3")

Gruß Daniel

Betrifft: AW: Fix-Kit
von: GerdL
Geschrieben am: 11.09.2020 21:01:04

Moin
Tabelle2.Range("A3:ZN3") = Tabelle1.Range("M2:ZZ2").Value
Gruß Gerd

Betrifft: Hab's mich gefragt, aber nicht getestet.Zu faul ..
von: lupo1
Geschrieben am: 11.09.2020 22:04:55



Beiträge aus dem Excel-Forum zum Thema "Kopieren von Zeile variabler Länge"