Hallo Nat
es gibt zwei Möglichkeiten wie man das Problem lösen kann. Probier mal beide Codes. Bei Variante 1 muss "richtig" bei falsch wieder gelöscht werden. Variante 2 .arbeitet über eine Variable die nach der For Next Schleife ausgewertet wird. Bei Falsch erfolgt unbedingter Aussprung mit Exit For !!
Sub ifAnweisung_Var1()
Range("H1:I1") = Empty
For icounter = 3 To 7
If Cells(1, icounter) >= Cells(1, 1) And Cells(1, icounter) <= Cells(1, 2) Or Cells(1, icounter) = "" Then Cells(1, 8) = "richtig" Else Cells(1, 9) = "falsch"
Next icounter
'richtig Zelle bei "falsch" wieder löschen
If Cells(1, 9) = "falsch" Then Cells(1, 8) = Empty
End Sub
Sub ifAnweisung_Var2()
Dim Txt As String
For icounter = 3 To 7
'leere Zelle einfach überspringen
If Cells(1, icounter) = "" Then Else _
If Cells(1, icounter) >= Cells(1, 1) And Cells(1, icounter) <= Cells(1, 2) Then Txt = "richtig" Else Txt = "falsch": Exit For
Next icounter
'Text nach For Next auswerten (bei falsch Exit For!!)
If Txt = "richtig" Then Cells(1, 8) = "richtig"
If Txt = "falsch" Then Cells(1, 9) = "falsch"
End Sub
|