306 Aufrufe
Gefragt in Tabellenkalkulation von
In einer Tabelle sollen zwei Spalten miteinander verglichen werden. Zum Beispiel die
Werte der Spalte B mit Werten der Spalte A. Wenn der Wert der Spalte B in A
vorkommt, soll die Zelle farbig markiert werden, am besten wäre in beiden Spalten.

Geht das mit der bedingten Formatierung?

2. Frage: wird auch eine Übereinstimmung angezeigt wenn der Wert Spalte B ein
Bestandteil von A ist?

Beispiel:
Wert B:   Katja
Wert A:   die Katja Müller

Vielen Dank

3 Antworten

0 Punkte
Beantwortet von
Hallo Donny :-)

Ein Beispiel!

Gruß Nighty

[code]Sub Vergleich()
    Dim Suche As Object, SpA As Object
    Dim SpB As Variant
    Dim Index As Long
    Set SpA = ActiveSheet.Range("A2:A" & ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row)
    SpB = ActiveSheet.Range("B2:B" & ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row)
    For Index = 1 To UBound(SpB)
        Set Suche = SpA.Find(SpB(Index, 1))
        If Not Suche Is Nothing Then
            Cells(Suche.Row, 1).Interior.ColorIndex = 3
            Cells(Index + 1, 2).Interior.ColorIndex = 3
        End If
    Next Index
End Sub[/code]
0 Punkte
Beantwortet von
Es hat geklappt! Vielen Dank Nighty!!  :-)

Noch eine letzte Frage:

Wie müßte die Variante aussehen, damit in Spalte A nur innerhalb der ausgewählten
Zellen verglichen und markiert wird?

Besten Dank.
0 Punkte
Beantwortet von
Hallo Donny .-)

Wie gewünscht!

Gruß Nighty

[code]Sub Vergleich()
    Dim Suche As Object, SpA As Object
    Dim SpB As Variant
    Dim Index As Long
    Set SpA = Selection
    SpB = ActiveSheet.Range("B2:B" & ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row)
    For Index = 1 To UBound(SpB)
        Set Suche = SpA.Find(SpB(Index, 1))
        If Not Suche Is Nothing Then
            Cells(Suche.Row, 1).Interior.ColorIndex = 3
            Cells(Index + 1, 2).Interior.ColorIndex = 3
        End If
    Next Index
End Sub[/code]
...