Anzeige
Archiv - Navigation
292to296
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
292to296
292to296
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Copy-Befehl in Schleifen

Copy-Befehl in Schleifen
09.08.2003 19:44:20
dietrich
Hallo zusammen,

ich möchte Zeilen einer Sammeltabelle auf unterschiedliche Arbeitsblätter verteilen. Dazu wähle ich eine Spalte mit den Unterscheidungsmerkmalen für die Selektion aus und gehe durch eine Schleife, in der der jeweils aktuelle Wert mit vorher definierten Werten verglichen wird. Wenn Übereinstimmung besteht, wird die gesamte Zeile kopiert und auf ein Arbeitsblatt für diese Werte geschrieben. Das ganze läuft jeweils mit copy und paste. Dachte ich jedenfalls ;-) Die Schleife mit dem ersten Wert wird noch gut durchlaufen, beim ersten anderen Wert (z=slab2) steigt Excel an der Stelle "ActiveSheet.Paste" aus mit dem Hinweis:
"Laufzeitfehler 1004. Die Paste-Methode des Worksheet-Objektes konnte nicht ausgeführt werden."

Diesen Fehler versteh ich nun nicht. Im ersten Teil der Schleife (z = slab1) hat es doch funktionert!?

Hier die Schleife, die durchlaufen wird:

...
' Gemessene SLA-Bereiche filtern und Zeilen kopieren
Workbooks(datei).Worksheets("sammelblatt").Select
zaehler0 = 2
Bereich = Workbooks(datei).Worksheets("sammelblatt").Range("c2:c" & Anzzeilen)
For Each z In Bereich
If z = slab1 Then
Workbooks(datei).Worksheets("sammelblatt").Select
aktzeile = zaehler0 & ":" & zaehler0
Rows(aktzeile).Copy
sheetname = "Daten_" & z
Worksheets(sheetname).Select
Range("a2").Select
anzzeilen2 = Workbooks(datei).Worksheets(sheetname).UsedRange.Rows.Count
anzzeilen3 = anzzeilen2 + 1 & ":" & anzzeilen2 + 1
Rows(anzzeilen3).Select
ActiveSheet.Paste
ElseIf z = slab2 Then
Workbooks(datei).Worksheets("sammelblatt").Select
aktzeile = zaehler0 & ":" & zaehler0
Rows(aktzeile).Copy
sheetname = "Daten_" & z
Worksheets(sheetname).Select
anzzeilen2 = Workbooks(datei).Worksheets(sheetname).UsedRange.Rows.Count
anzzeilen3 = anzzeilen2 + 1 & ":" & anzzeilen2 + 1
Rows(anzzeilen3).Select
ActiveSheet.Paste
ElseIf z = slab2 Then
...
End If
zaehler0 = zaehler0 + 1
Next
...

Was mache ich falsch?

Vielen Dank!
Dietrich

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Copy-Befehl in Schleifen
09.08.2003 20:11:42
dietrich
Hallo zusammen,

inzwischen funktionierts. Ich mein eigentlich, dass ich nichts geändert habe.
Muss die Hitze sein...

Verwirrt ;-)
Dietrich


AW: Copy-Befehl in Schleifen
09.08.2003 20:19:04
Jörg Gradert
Hallo Dietrich,
wollte sonst gerade nachfragen, ob vielleicht auf Tabellenblatt Daten_2 der Blattschutz aktiviert ist. Das hätte ein Einfügen der Daten verhindert.

Gruß Jörg


AW: Copy-Befehl in Schleifen
09.08.2003 20:25:48
dietrich
Hi Jörg,

ich guck immer mit Einzelschritten, ob das Makro auch das macht, was ich gewollt hab. Ich vermute, ich habe während dieser Test irgendwo reingeklickt, was ich nicht hätte tun sollen. Wenn man es allein werkeln lässt läufts :-)

Gruß
Dietrich


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige