Der Code wie folgt funktioniert als Makro.
Aber wenn ich es in einen Tabellenblatt reinschreibe, dass es automatisch losgehen soll, wenn ich in der Spalte A was ändere, startet es. Doch bringt bei der Zeile ab, die mit "lastRM" anfängt.
Meine Vermutung ist, dass es bei dem Wechsel von Tabellenblätter Probleme ab.
Kann das sein??
Sub Markieren()
Dim suchbegriff1, suchbegriff2 As Variant
Dim rngMeine1Zelle, rngMeine2Zelle As Range
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Name = ActiveSheet.Name
Main = Sheets("Übersicht").Name
Sheets(Main).Select
lastRM = Sheets(Main).Range(Cells(17, 9999), Cells(17, 9999)).End(xlToLeft).Column
Sheets(Main).Range(Cells(17, 1), Cells(10000, lastRM)).Interior.Color = vbWhite
Sheets(Name).Select
last = Sheets(Name).Range(Cells(99999, 2), Cells(99999, 2)).End(xlUp).Row
For i = 2 To last Step 1
If Sheets(Name).Cells(i, 1) = "RELEVANT" Then
suchbegriff1 = Sheets(Name).Cells(i, 4).Value
suchbegriff2 = Sheets(Name).Cells(i, 5).Value
Sheets(Main).Select
For Each rngMeine1Zelle In Sheets(Main).Range(Cells(15, 1), Cells(15, lastRM)).Cells
If suchbegriff1 = rngMeine1Zelle.Value Then
zeile = rngMeine1Zelle.Row
spalte = rngMeine1Zelle.Column
unten = Sheets(Main).Range(Cells(99999, spalte), Cells(99999, spalte)).End(xlUp).Row
For Each rngMeine2Zelle In Sheets(Main).Range(Cells(zeile + 2, spalte), Cells(unten, spalte)).Cells
If suchbegriff2 = rngMeine2Zelle.Value Then
rngMeine2Zelle.Offset(0, 0).Interior.Color = vbRed
End If
Next
End If
Next
End If
Next
End Sub