AW: einfach nach CASE das IF
Nicole
super, danke, funktioniert. Für spätere Interessenten hier der Code (ein wenig abgespeckt). Abgefragt wird, was in einer Spalte Z3 steht und zusätzlich werden noch zwei Datumswerte miteinander verglichen, von dem einer ein Textformat hat:
Dim bereich As Range, Z1 As Range, Z2 As Range
Dim Zeilen As Long, n As Long
Set bereich = Range("B7").CurrentRegion
Zeilen = bereich.Rows.Count
For n = 0 To Zeilen - 1
Set Z1 = Range("B7").Offset(n, 10) 'Datum 1
Set Z2 = Range("B7").Offset(n, 11) 'Datum als Text
Set Z3 = Range("B7").Offset(n, 7) 'Abgleichszelle z.B. Sportarten
Select Case Z3
Case ""
Z2.Offset(0, 1).Value = "keine Sportart vorhanden"
Z2.Offset(0, 1).Interior.Color = vbWhite
Case "Squash"
If Z2 = "" Then
Z2.Offset(0, 1).Value = "kein Textdatum"
Z2.Offset(0, 1).Interior.Color = vbWhite
Else
Z2.Offset(0, 1).Value = "Squash ist da"
Z2.Offset(0, 1).Interior.Color = vbGreen
End If
Case "Laufen"
If Z2 = "" Then
Z2.Offset(0, 1).Value = "kein Textdatum"
Z2.Offset(0, 1).Interior.Color = vbWhite
Else
If Format(Z1, "yyyyMM") = Z2 Then
Z2.Offset(0, 1).Value = "Laufen ist da"
Z2.Offset(0, 1).Interior.Color = vbGreen
Else
Z2.Offset(0, 1).Value = "die Datumswerte stimmen nicht überein"
Z2.Offset(0, 1).Interior.Color = vbRed
End If
End If
Case Else
Z2.Offset(0, 1).Value = "nicht OK"
Z2.Offset(0, 1).Interior.Color = vbRed
End Select
Next n