Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
920to924
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
920to924
920to924
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zellen vergleichen und an andere Stelle kopieren

Zellen vergleichen und an andere Stelle kopieren
01.11.2007 16:13:00
Ralph
Hallo,
ich mehrere tausend Zeilen an Daten. Die Daten stehen jeweils in den Spalten A bis E. Normalerweise treten einzelne Datensätze in Pärchen auf, also 2 aufeinanderfolgende Zeilen gehören zusammen. Ob sie zusammengehören sieht man an Spalte B, wenn die Werte identisch sind. Es gibt aber leider auch Fälle, bei denen nur ein Datensatz, sprich nur eine Zeile vorhanden ist.
Nun will ich die jeweils 1. Zeile dieser Pärchen, bzw. die einzelnen Datensätze an eine andere Stellen kopieren. Wohin kopiert werden soll, entscheidet bei Pärchen der Wert in Spalte E der betreffenden Zeile i.
Ist der Wert dieser Zelle "-1", dann sollen die Zellen Ai bis Ei in Zelle Gi kopiert werden.
Ist der Wert dieser Zelle "0", dann sollen die Zellen Ai bis Ei in Zelle Mi kopiert werden.
Handelt es sich um einen einzelnen Datensatz, dann sollen dessen Zellen Ai bis Ei in Zelle Si kopiert werden.
Ich habe folgendes Macro (ich verwende Excel 2004 für Macs) geschrieben, aber es funktioniert nicht. Es erscheint folgende Fehlermeldung:
Laufzeitfehler '1004'
Die Methode 'Range' für das Objekt '_Global' ist fehlgeschlagen

Sub Aufteilung()
i = 1
Do Until IsEmpty(Cells(i + 1, 1))
If Cells(i, 2) = Cells(i + 1, 2) And Cells(i, 5) = -1 Then
Range(Cells(i, 1), Cells(i, 5)).Copy Range(Cells(i, 7))
i = i + 2
Else
If Cells(i, 2) = Cells(i + 1, 2) And Cells(i, 5) = 0 Then
Range(Cells(i, 1), Cells(i, 5)).Copy Range(Cells(i, 13))
i = i + 2
Else
If Cells(i, 2)  Cells(i + 1, 2) Then
Range(Cells(i, 1), Cells(i, 5)).Copy Range(Cells(i, 19))
i = i + 1
End If
End If
End If
Loop
End Sub


Was mache ich falsch?
Vielen Dank schonmal vorab für eure Hilfe!
Viele Grüße,
Ralph

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

Betreff
Datum
Anwender
Anzeige
AW: Zellen vergleichen und an andere Stelle kopieren
01.11.2007 16:15:00
Hubert
Hi,
den Blattnamen angeben, mit With-Rahmen oder Objektvariablen.
mfg Hubert

AW: Zellen vergleichen und an andere Stelle kopieren
01.11.2007 16:22:00
Ralph
Danke für die Antwort Hubert.
Sorry für die Nachfrage, aber wie genau meinst du das? Meine VBA-Kenntnisse sind nicht gerade berauschend und ich bin schon froh, wenn ich halbwegs sowas wie oben zusammenbasteln kann.

AW: Zellen vergleichen und an andere Stelle kopieren
01.11.2007 16:32:00
Hubert
Hi,
wie lautet der Blattname, in dem die Kopiererei erfolgt?
mfg Hubert

AW: Zellen vergleichen und an andere Stelle kopieren
01.11.2007 16:36:13
Ralph
Die Daten werden vor der Aufteilung in eine neue Datei kopiert, das Blatt hat also keinen speziellen Namen, sondern standardmäßig "Tabelle1".

AW: Zellen vergleichen und an andere Stelle kopieren
01.11.2007 16:59:43
Hubert

Sub Aufteilung()
i = 1
With Tabelle1
Do Until IsEmpty(.Cells(i + 1, 1))
If .Cells(i, 2) = .Cells(i + 1, 2) And .Cells(i, 5) = -1 Then
.Range(.Cells(i, 1), .Cells(i, 5)).Copy .Range(.Cells(i, 7))
i = i + 2
Else
If .Cells(i, 2) = .Cells(i + 1, 2) And .Cells(i, 5) = 0 Then
.Range(.Cells(i, 1), .Cells(i, 5)).Copy .Range(.Cells(i, 13))
i = i + 2
Else
If .Cells(i, 2)  .Cells(i + 1, 2) Then
.Range(.Cells(i, 1), .Cells(i, 5)).Copy .Range(.Cells(i, 19))
i = i + 1
End If
End If
End If
Loop
End With
End Sub


mfg Hubert

Anzeige
AW: Zellen vergleichen und an andere Stelle kopieren
01.11.2007 17:13:00
Ralph
Hallo Hubert,
danke, aber leider geht das bei mir so auch nicht. Es kommt wieder eine Fehlermeldung:
Laufzeitfehler '1004'
Anwendungs- oder objektdefinierter Fehler
Im Editor ist dann folgende Zeile gelb markiert:
.Range(.Cells(i, 1), .Cells(i, 5)).Copy .Range(.Cells(i, 7))

AW: Zellen vergleichen und an andere Stelle kopieren
01.11.2007 17:46:13
Hubert
Hi,
du musst den Codenamen der Tabelle anpassen.
mfg Hubert

AW: Zellen vergleichen und an andere Stelle kopieren
01.11.2007 17:54:00
Ralph
Ja, das hatte ich gemacht. Habe auch einen neuen Namen vergeben und das Macro angepasst, hat aber auch nicht funktioniert.
Ich hab mal ein Beispiel hochgeladen:
https://www.herber.de/bbs/user/47326.xls

Anzeige
Beispieldatei
02.11.2007 12:04:00
Ralph
Hier nochmal der Link zu der Beispieldatei, da ich anfangs Keine hochgeladen hatte:
https://www.herber.de/bbs/user/47326.xls
Ich stehe wirklich auf dem Schlauch und komme nicht weiter.
Vielen Dank!
Ralph

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige