Hi James
Try this
Option Explicit
Sub RuleTesting()
Dim QRule As String
Dim RTRule As String
Dim CurrentResult As Double
Dim Status As Range
Dim RedNo As String
Dim GreenNo As String
Dim Symbol As String
Dim ws1 As Worksheet, ws2 As Worksheet
Dim LR As Long, cel As Range
Set ws1 = Sheets("Results_Q")
Set ws2 = Sheets("RuleTable_RT")
With ws1
LR = .Cells.Find("*", .Cells(.Rows.Count, .Columns.Count), SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
For Each cel In Range("E2:E" & LR)
Set Status = .Range("F" & cel.Row)
' Variables
QRule = .Range("E" & cel.Row).Value
RTRule = ws2.Range("A" & cel.Row).Value
CurrentResult = .Range("D" & cel.Row).Value
RedNo = ws2.Range("C" & cel.Row).Value
GreenNo = ws2.Range("G" & cel.Row).Value
Symbol = ws2.Range("B" & cel.Row).Value
If Symbol = ">" Then
If CurrentResult > RedNo Then
Status = "Red"
ElseIf CurrentResult < GreenNo Then Status = "Green"
ElseIf Symbol = ">" Then Status = "Amber"
Else
End If
ElseIf Symbol = "<" Then
If CurrentResult < RedNo Then
Status = "Red"
ElseIf CurrentResult > GreenNo Then Status = "Green"
Else: Status = "Amber"
End If
End If
Next cel
End With
End Sub
Bookmarks