Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Zwei Bereiche vergleichen





Frage

Hallo, ich möchte zwei Tabellenbereiche miteinander vergleichen. Bereich1 = A2:G12 Bereich2 = A15:F18 Gleiche Zellinhalte sollten in Bereich1 mit der Farbe ROT hinterlegt werden. Bitte nur VBA Vielen Dank im voraus MfG Tom

Antwort 1 von Event

Hallo

Private Sub CommandButton1_Click()
Dim bereich1 As Range, bereich2 As Range, zelle, zellen
Set bereich1 = Range("A2:G12")
Set bereich2 = Range("A15:F18")
For Each zellen In bereich1
For Each zelle In bereich2
If zellen.Value = zelle.Value And zellen.Value <> "" Then
zellen.Font.Color = RGB(255, 0, 0)
Exit For
Else: zellen.Font.ColorIndex = xlColorIndexAutomatic
End If
Next
Next
End Sub


Hoffe Du kommst klar...

Gruß

Antwort 2 von Tom1000

Hallo Event,

klappt Supi. Danke schön.
Hätte noch eine Zusatzfrage:
Was muss ich an deinem Code verändern, damit er die gleichen Zellinhalte auf einem neuen Blatt untereinander listet. Also von A1 beginnend bzw. die erste freie Zelle in Spalte A, jede Übereinstimmung in eine Zeile (A2, A3......)

Wäre super nett, wenn du mir nochmal helfen würdest

Vielen Dank

MfG
Tom

Antwort 3 von Event

Hallo


Private Sub CommandButton1_Click()
Dim bereich1 As Range, bereich2 As Range, zelle, zellen
Set bereich1 = Range("A2:G12")
Set bereich2 = Range("A15:F18")
For Each zellen In bereich1
For Each zelle In bereich2
If zellen.Value = zelle.Value And zellen.Value <> "" Then
zellen.Font.Color = RGB(255, 0, 0)
 zellen.Copy
 Sheets("Tabelle2").Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial (xlValues)
Exit For
Else: zellen.Font.ColorIndex = xlColorIndexAutomatic
End If
Next
Next
End Sub


Hoffe Du kommst damit klar...
Gruß

Antwort 4 von Tom1000

Hallo Event,

nochmals meinen herzlichsten Dank.
Sorry, jetzt muss ich nochmal nerven:
Warum wird die Auflistung in Tabelle2 erst ab A2 gestartet, obwohl A1 leer ist ?

Danke u. Gruss
Tom

Antwort 5 von Event

Hallo

Schau Dir dazu das mal an, und versuch´ Dein Glück hiermit...

Private Sub CommandButton1_Click()
Dim bereich1 As Range, bereich2 As Range, zelle, zellen
Set bereich1 = Range("A2:G12")
Set bereich2 = Range("A15:F18")
For Each zellen In bereich1
For Each zelle In bereich2
If zellen.Value = zelle.Value And zellen.Value <> "" Then
zellen.Font.Color = RGB(255, 0, 0)
 zellen.Copy
 Sheets("Tabelle2").Range("A1:A65535").SpecialCells(xlBlanks).Areas(1).Cells(1).PasteSpecial (xlValues)
Exit For
Else: zellen.Font.ColorIndex = xlColorIndexAutomatic
End If
Next
Next
End Sub


Gruß

Antwort 6 von Tom1000

Hallo Event,

bei deinem letzten Vorschlag bekomme ich die Meldung:
Keine Zellen gefunden

In dieser Zeile des Codes kommt die Meldung:
Sheets("Tabelle2").Range("A1:A65535").SpecialCells(xlBlanks).Areas(1).Cells(1).PasteSpecial (xlValues)

Die Zellen sind aber absolut Leer. Keine Formatierungen oder ähnliches.
Ich nehme deinen vorletzten Vorschlag. Der reicht mir vollkommen.

Also, vielen Dank nochmal für deine Geduld u. deine Lösungen

Gruss
Tom

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: