Zeilen in verschiedenen Blättern abgleichen/finden

Zeilen in verschiedenen Blättern abgleichen/finden

Ich habe 2 Blätter mit Spalten wie Händler, Betrag, Daten usw. Die beiden Blätter haben zu 100 % die gleiche Menge. Ich möchte die Zeilen von Blatt 1 und Blatt 2 abgleichen/herausfinden, die den gleichen Betrag enthalten. In einem der Blätter habe ich mehr Daten als in dem anderen, so dass beispielsweise die 3. Zeile von Blatt 1 nicht mit der 3. Zeile von Blatt 2 übereinstimmt. Irgendwie muss ich nach dem Betrag suchen.

Antwort1

Das sollte funktionieren, aber Ihre Frage ist sehr unklar :(

Sub FindTheThings()

Dim resultRow As Integer
resultRow = 2

Dim currentRow As Integer
currentRow = 2

Worksheets("Sheet3").Range("A1").Value = "Sheet1 row"
Worksheets("Sheet3").Range("B1").Value = "Sheet2 row"

Do While (Worksheets("Sheet1").Range("B" & currentRow).Value <> "")

Dim amount As String
amount = Worksheets("Sheet1").Range("B" & currentRow).Value

Dim currentRowSheet2 As String
currentRowSheet2 = 2

    Do While (Worksheets("Sheet2").Range("B" & currentRowSheet2).Value <> "")

        Dim sheet2amount As String
        sheet2amount = Worksheets("Sheet2").Range("B" & currentRowSheet2).Value

        If (sheet2amount = amount) Then

            Worksheets("Sheet3").Range("A" & resultRow).Value = currentRow
            Worksheets("Sheet3").Range("B" & resultRow).Value = currentRowSheet2

            resultRow = resultRow + 1
            Exit Do
        End If

    currentRowSheet2 = currentRowSheet2 + 1
    Loop
currentRow = currentRow + 1

Loop

End Sub

Es gibt Fehler, z. B. was passiert, wenn der Betrag mehrfach vorkommt, was passiert, wenn die Daten in Blatt1 mehr oder weniger Werte haben als in Blatt2, wie die Informationen dargestellt werden sollen usw.

Unabhängig davon sollte dieses VBa Ihnen den Einstieg erleichtern, da es optimiert werden kann

Blatt1

Bildbeschreibung hier eingeben

Blatt 2

Bildbeschreibung hier eingeben

Blatt 3 (erstellt nach Makroausführung)

Bildbeschreibung hier eingeben

Antwort2

=VLOOKUP(B1,Sheet1!$A$1:$B$28,2,0)findet die erste Instanz.

=COUNTIF(Sheet1!$A:$A,Sheet2!B2)gibt an, ob mehr als eine Instanz vorhanden ist.

verwandte Informationen