Bei dem Versuch über eine If und For-Schleife die Range zu kopieren tritt bei mir immer ein Laufzeitfeher (1004) auf jedoch, wird der Code korrekt ausgeführt (zumindest scheint es mir so).
1) Wenn ein Laufzeitfehler auftritt, widerspricht das der Aussage, dass etwas "korrekt ausgeführt" wird.
-> An der Stelle taucht bei mir das erste dicke, fette und sehr seeehr große Fragezeichen über meinem Kopf auf. ;o)
2) Der Laufzeitfehler wird in einer bestimmten Zeile im Makro auftreten und genau in jender Zeile stehen bleiben. Leider hast du vergessen uns genau das - jenes absolut unerlässliche und wichtige Detail - mitzuteilen. (Darauf hat übrigens Gast7777 angespielt - Arzt: "Wo tut's denn genau weh?").
-> Das zweite dicke, fette und sehr seeehr große Fragezeichen über meinem Kopf.
3) Warum schließt du von der Anzahl der Zeilen auf ein Blatt?
-> Das dritte dicke, fette und sehr seeehr große Fragezeichen über meinem Kopf.
LastRowName = Tabelle2.Range("A" & Rows.Count).End(xlUp).Row
For B = 2 To LastRowName
LastRowSort = Sheets(B + 10).Range("A" & Rows.Count).End(xlUp).Row
Außerdem meinst du Tabellenblatt (engl. Worksheet) und nicht Blatt (engl. Sheet). ;o)
Range("A" & Rows.Count)
Ausdrücke wie der obige sind generell mit Vorsicht zu genießen - genau genommen ist er falsch, AUßER diese Zeile steht innerhalb eines Tabellen-Klassenmoduls, dann ist es ok.
Warum?
Steht es in einem Tabellen-Klassenmodul, bezieht sich Range (und auch Rows) auf diese Klasse - es wird immer zuerst in den aktuellen Sichtbarkeitsbereich geschaut, ob es darin etwas gibt das Range oder Rows heißt.
Steht es in einem Modul, und gibt es darin keine Funktion die Range oder Rows heißt, dann wird Global nachgeschaut (heißt: man landet bei ActiveSheet - also das derzeit aktive Blatt). Wie du sicher weißt, gibt es nicht nur Tabellenblätter sondern auch Diagrammblätter und letztere besitzen keine Range oder Rows-Eigenschaft -> BäM! .. Laufzeitfehler. Lustigerweise ist das der Fehler 1004.
Je mehr ich mir das Makro anschaue, desto mehr Fragezeichen drohen mich zu erdrücken.
Es wäre angebracht uns hier - von ganz vorne angefangen - zu erklären, wie deine Mappe aufgebaut ist und
nach welcher Logik du was kopieren möchtest.
Grüße
|