Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1476to1480
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

VBA: Vergleiche 2 Zellen, kopiere bei Übereinstimm

VBA: Vergleiche 2 Zellen, kopiere bei Übereinstimm
18.02.2016 09:50:59
Baiko
Guten Tag,
ich möchte in einer Tabelle (Arbeitsblatt "Seite1_1") die Werte der Zellen in Spalte 18 und 19 vergleichen, wobei nur die ersten 7 Stellen berücksichtigt werden sollen ("LINKS").
Stimmen diese überein, soll aus einem Tabellenblatt "Verweise" der Wert aus der Zelle 2, 2 in das Arbeitsblatt "Seite1_1" Spalte 16 kopiert und der Wert aus 2, 3 in Spalte 17 kopiert werden (und zwar in die Zeile, deren Werte zuvor verglichen worden sind. Stimmen sie nicht überein, soll kein Kopiervorgang erfolgen.
Das Makro soll alle Zeilen durchlaufen und den Prüf- bzw. Kopiervorgang bis zum Ende der Tabelle durchführen, soweit die Zeilen Daten enthalten.
Folgendes Makro funktioniert, jedoch habe ich hier zuvor manuell die Werte aus den Spalten 18 und 19 mit der Funktion "Links" auf 7 Stellen reduziert und das Ganze in die Spalten 34 und 35 übertragen. Auf diesen Umweg würde ich nun gern verzichten und den Vergleich einschließlich der Berücksichtigung nur der ersten 7 Stellen direkt in das Makro einbauen, indem direkt die Spalten 18 und 19 angesprochen werden.
Wer kann mir helfen? Danke im Voraus!!

Sub Test()
Dim rng As Range
For Each rng In Sheets("Seite1_1").Range(Cells(3, 34), Cells(Rows.Count, 1).End(xlUp))
If Sheets("Seite1_1").Cells(rng.Row, 34) = Sheets("Seite1_1").Cells(rng.Row, 35) Then
Sheets("Seite1_1").Cells(rng.Row, 37).Copy _
Sheets("Seite1_1").Cells(rng.Row, 16).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End If
If Sheets("Seite1_1").Cells(rng.Row, 34) = Sheets("Seite1_1").Cells(rng.Row, 35) Then
Sheets("Seite1_1").Cells(rng.Row, 38).Copy _
Sheets("Seite1_1").Cells(rng.Row, 17).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End If
Next rng
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: VBA: Vergleiche 2 Zellen, kopiere bei Übereinstimm
18.02.2016 10:19:48
ChrisL
Hi Baiko
Ganz klar ist mir die Aufgabe nicht (z.B. von einem Blatt Verweise sehe ich im Code nichts). Vielleicht hilft dir trotzdem folgender Ansatz:
Sub Test()
Dim rng As Range
With Sheets("Seite1_1")
For Each rng In .Range(.Cells(3, 34), .Cells(.Rows.Count, 34).End(xlUp))
If Left(.Cells(rng.Row, 34), 7) = Left(.Cells(rng.Row, 35), 7) Then
.Cells(rng.Row, 16) = .Cells(rng.Row, 37)
.Cells(rng.Row, 17) = .Cells(rng.Row, 38)
End If
Next rng
End With
End Sub
cu
Chris

AW: VBA: Vergleiche 2 Zellen, kopiere bei Übereinstimm
18.02.2016 11:05:29
Baiko
Danke, Chris. Leider bringt mich das noch nicht zum Ziel. Du hast Recht, die Aufgabenstellung hat sich insofern verändert, als dass die Spalten 45ff jetzt leer sind, da ich ja direkt Spalte 18 und 19 vergleichen möchte.
Die Arbeitsmappe verfügt über die Tabellenblätter "Arbeitsblatt "Seite1_1" und "Verweise".
Stimmen die ersten 7 Stellen in Sp. 18 und 19 in "Seite1_1" überein, soll Zelle 2, 2 aus "Verweise" in die jeweilige Zeile der Sp. 16 (in "Seite1_1") kopiert werden und Zelle 2, 3 in Spalte 17.
Ich hänge mal eine Testdatei an - vielleicht hast du (oder jemand anderes) eine hilfreiche Idee?
https://www.herber.de/bbs/user/103671.xlsm
Danke vorab!!
VG, Baiko

Anzeige
AW: VBA: Vergleiche 2 Zellen, kopiere bei Übereinstimm
18.02.2016 11:14:25
ChrisL
Hi Baiko
so...
Sub Test()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim rng As Range
Set WS1 = Worksheets("Seite1_1")
Set WS2 = Worksheets("Verweise")
With WS1
For Each rng In .Range(.Cells(2, 18), .Cells(.Rows.Count, 18).End(xlUp))
If Left(.Cells(rng.Row, 18), 7) = Left(.Cells(rng.Row, 19), 7) Then
.Cells(rng.Row, 16) = WS2.Range("B2")
.Cells(rng.Row, 17) = WS2.Range("C2")
End If
Next rng
End With
End Sub

cu
Chris

AW: VBA: Vergleiche 2 Zellen, kopiere bei Übereinstimm
18.02.2016 11:27:07
Baiko
Hallo Chris,
bin schwer begeistert!!! Und habe wieder etwas zu meinen bescheidenen VBA-Kenntnissen hinzu gelernt! Hab´ tausend Dank, es funktioniert einwandfrei!!
Herzlichen Gruß, Baiko
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige