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

2 datenblätter vergleichen und INhalt kopieren

2 datenblätter vergleichen und INhalt kopieren
21.09.2005 18:55:17
Kay
Hallo,
ich hab folgendes Problem:
Ich muss 2 Datenblätter miteinander vergleichen und den Zellinhalt bei Übereinstimmung eines Datenblattes in das anderer kopieren.
FOlgendes Makro hab ich bereits entwickelt, erreicht aber leider nicht das gewünschte Ergebnis.

Sub Makro8()
z = 1 'Lesezeile
s = 3 'Lesespalte
pz = 1 'Prüfzeile
ps = 1 'Prüfspalte
ez = 2 'Einfügezeile
'Schleife durchläuft die erste Tabelle bis zum Ende
Do Until (Sheets("Tabelle2").Cells(z, s).Text = "") And (Sheets("Tabelle2").Cells(z, s + 1).Text = "")
'in der inneren Schleife wird immer wieder die zweite Tabelle durchsucht
Do Until (Sheets("Hilfstabelle").Cells(pz, ps).Text = "") And (Sheets("Hilfstabelle").Cells(pz, ps + 1).Text = "")
'sobald der Eintrag vorkommt wird abgebrochen
If ((Sheets("Tabelle2").Cells(z, s).Text) = (Sheets("Hilfstabelle").Cells(pz, ps).Text)) And ((Sheets("Tabelle2").Cells(z, s + 1).Text) = (Sheets("Hilfstabelle").Cells(pz, ps + 1).Text)) Then
Go

Sub vorhanden
End If
pz = pz + 1
Loop
'wenn keine Übereinstimmung dann wird der nächste Eintrag gefiltert
z = z + 1
vorhanden:
Sheets("Hilfstabelle").Cells(pz, 5).Copy
Sheets("Tabelle2").Paste Destination:=Sheets("Tabelle2").Cells(z, 8)
Sheets("Hilfstabelle").Cells(pz, 6).Copy
Sheets("Tabelle2").Paste Destination:=Sheets("Tabelle2").Cells(z, 9)
Application.CutCopyMode = False
Loop
MsgBox ("Fertig")
End Sub

KLeine Erläuterung: Wenn Zellinhalt "Tabelle2" Spalte 3+4 = "Hilfstabelle"1+2
dann soll Spalte 5+6 "Hilfstabelle" in Spalte 8+9 "Tabelle2" kopiert werden.
Problem: Es wird nur der erste Wert kopiert, DAnach passiert nichts mehr.
VIelen Dank im voraus
Kay Mertens

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: 2 datenblätter vergleichen und INhalt kopieren
21.09.2005 19:19:55
Rene
Hi,
kannst du das file hochladen, damit man sich das mal genauer anschauen kann?
weil ich weiß nicht, wieso du es dir so kompliziert machst, um 2 tabellen zu vergleichen und dann in eine hilfstabelle kopierst...
lg René
AW: 2 datenblätter vergleichen und INhalt kopieren
21.09.2005 20:24:53
Kay
Hallo Renè,
danke für deine schnelle Antwort
hab das Problem in eine extra Mappe extrahiert:
Anbei der Link:
https://www.herber.de/bbs/user/26820.xls
problem ist makro1
Danke
Kay
AW: 2 datenblätter vergleichen und INhalt kopieren
21.09.2005 21:26:16
Rene
Hallo,
habe dein macro etwas umgeschrieben...

Sub Makro1()
z = 1 'Lesezeile
s = 3 'Lesespalte
pz = 1 'Prüfzeile
ps = 1 'Prüfspalte
'Schleife durchläuft die erste Tabelle bis zum Ende
Do Until (Sheets("Tabelle2").Cells(z, s).Text = "") And (Sheets("Tabelle2").Cells(z, s + 1).Text = "")
'in der inneren Schleife wird immer wieder die zweite Tabelle durchsucht
Do Until (Sheets("Tabelle1").Cells(pz, ps).Text = "") And (Sheets("Tabelle1").Cells(pz, ps + 1).Text = "")
'sobald der Eintrag vorkommt wird abgebrochen
If ((Sheets("Tabelle2").Cells(z, s).Text) = (Sheets("Tabelle1").Cells(pz, ps).Text)) And ((Sheets("Tabelle2").Cells(z, s + 1).Text) = (Sheets("Tabelle1").Cells(pz, ps + 1).Text)) Then
Sheets("Tabelle1").Cells(pz, 5).Copy
Sheets("Tabelle2").Paste Destination:=Sheets("Tabelle2").Cells(z, 8)
Sheets("Tabelle1").Cells(pz, 6).Copy
Sheets("Tabelle2").Paste Destination:=Sheets("Tabelle2").Cells(z, 9)
Application.CutCopyMode = False
End If
pz = pz + 1
Loop
'wenn keine Übereinstimmung dann wird der nächste Eintrag gefiltert
z = z + 1
pz = 1
Loop
MsgBox ("Fertig")
End Sub

jetzt sollte es gehen...
du hast vergessen variable pz wieder auf ausgangswert zu setzten, bei neuer schleife und der anfangswert von Lesezeilen variablen z muss 2 sein und nicht 1, damit er gleich in zeile 2 anfängt, aber kannst du auch auf zeile 1 lassen, falls überschriften in Tabelle 2 mal weg sein sollten
ich hoffe bei dir gehts dann auch, bitte um feedback
have fun, lg René
Anzeige
AW: 2 datenblätter vergleichen und INhalt kopieren
21.09.2005 22:10:31
Kay
Danke Rene,
es funktioniert. Was so eine "vergessene" Zeile alles bewirkt.
Muss noch ne Menge lernen ;-)
Danke nochmal
Kay

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige