Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1228to1232
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bereich kopieren

Bereich kopieren
TommiH
Moin,
ich versuche seit 1/2h einen Bereich von einem aktiven Arbeitsblatt in einen anderen zu kopieren... Aber es klappt einfach nicht :(
Folgenden Code probiere ich.
Range(Cells(Zeile, 1), Cells(Zeile + 50, 7)).Copy Destination:=Worksheets(BName).Range(Cells(Zeile+10 , 1), Cells(Zeile + 60, 7))
BName ist der Name des Ziel-Arbeitsblatts. Aber ich bekomme immer nur einen Laufzeitfehler '1004' (anwendungs oder objektorientierter Fehler).
Wo mache ich da den Fehler?
Tommi

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Bereich kopieren
12.09.2011 14:38:02
Henrik
Hallo Tommi,
wahrscheinlich liegt dein fehler bei der cells Referenzierung.

set QWS=thisworkbook.Worksheets("QuellBlatt")
set ZWS=thisworkbook.Worksheets(BName)
QWS.Range(QWS.Cells(Zeile, 1), QWS.Cells(Zeile + 50, 7)).Copy Destination:=ZWS.Range(ZWS.Cells( _
Zeile+10 , 1), ZWS.Cells(Zeile + 60, 7))

Gruß Henrik
AW: Bereich kopieren
12.09.2011 14:42:40
Daniel
Hi
wenn du dich auf ein anderes Blatt als das aktive beziehst musst du das Sheet auch vor den einzelnen Cells innerhalb der Range angeben: Range(Sheets().Cells(), Sheets().Cells())
hierzu aber noch zwei hinweise:
1. Range(Cells(Zeile, 1), Cells(Zeile + 50, 7))
geht kürzer so:
Cells(Zeile, 1).Resize(51, 7)
2. beim Einfügen reicht es, die linke obere Zelle als Zellbereich anzugeben, Excel rechnet dann den Rest automatisch:
Range("A1:C100").Copy Destination:=Range("E1")
damit solltest du das obige Problem auch umgehen können.
Gruß Daniel
Anzeige
AW: Bereich kopieren
12.09.2011 14:57:13
TommiH
Hallo Daniel,
super, das hat direkt funktioniert, auch das mit der linken oberen Ecke angeben.
Nun ergibt sich nur noch das Problem, das die Zeilenhöhen noch angepasst werden müssten, mache ich das mit einer Schleife (im alten Blatt auslesen und im neuen Blatt setzen) oder geht das eleganter?
Tommi
AW: Bereich kopieren
12.09.2011 17:51:13
Daniel
Hi
wenn du die Zeile als ganzes kopiest dun einfügst, sollten die Zeilenhöhen mit kopiert werden.
Gruß, Daniel
AW: Bereich kopieren
13.09.2011 09:19:18
TommiH
Guten morgen Daniel,
hm, als Ganzes...
Cells(Zeile, 1).Resize(193, 7).Copy Destination:=Worksheets(BName).Cells(100, 1)
So mache ich es im Moment, du meinst statt Cells(Zeile, 1).Resize(193, 7) sowas wie rows(?) ersetzen? Hm, da fehlt mir mal wieder etwas Syntax-Wissen ;)
Tommi
Anzeige
AW: Bereich kopieren
13.09.2011 11:09:57
Daniel
Hi
naja,
Cells(Zeile, 1).EntireRow.Copy
oder
Rows(zeile).Copy
wenn die Spalten rechts von Spalte G nicht benötigt werden, kannst du die danach ja wieder löschen.
Gruß, Daniel
AW: Bereich kopieren
13.09.2011 11:34:40
TommiH
Hallo Daniel,
ups - nun bin ich verwirrt, mit Cells(Zeile, 1).Resize(193, 7).Copy habe ich doch den Bereich anfangend bei Zelle (Zeile, 1) und dann 193 Zeilen und 7 Spalten breit kopiert.
Wenn ich nun an der Zelle (Zeile, 1) anfangen, die nächsten 193 kompletten Zeilen kopieren möchte, dann müsste ich doch irgendwie schreiben
Rows(Zeile bis Zeile+193) oder so ähnlich, oder nicht?
Tommi
Anzeige
Rows(Zeile).Resize(193).Copy .... owT
13.09.2011 11:55:00
Rudi
AW: Rows(Zeile).Resize(193).Copy .... owT
14.09.2011 12:01:23
TommiH
Hallo Rudi,
ja perfekt, damit hat jetzt alles bestens geklappt - danke!
Tommi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige